Chris Roberts
81ec1173c2
Remove symbol transformation in config
2022-04-25 12:26:56 -05:00
sophia
9dcb9df7ff
Let mappers convert machine to proto opposed to client
2022-04-25 12:26:55 -05:00
sophia
9bf59a0d42
Rely on proto mappers to convert configs
2022-04-25 12:26:51 -05:00
sophia
436518e445
No need to stringify hash keys when using mappers
2022-04-25 12:26:51 -05:00
sophia
7dd3649d73
Update Symbol proto mappers
2022-04-25 12:26:51 -05:00
sophia
d5aacc0bc6
Thrash around making to proto for config faster
2022-04-25 12:26:51 -05:00
sophia
ccf2bf6197
Pass config as a SDK hash in order to use the Symbol proto
2022-04-25 12:26:51 -05:00
sophia
77a06e83d0
Close core plugins
2022-04-25 12:26:50 -05:00
sophia
b40dde3797
Module for core plugin manager mappers
2022-04-25 12:26:50 -05:00
sophia
afc6d1c27d
Extract core plugin manager from context
2022-04-25 12:26:50 -05:00
Chris Roberts
50a7a578d3
Use initialization args for cache key
2022-04-25 12:26:39 -05:00
Chris Roberts
924700e103
Support method passthru to local plugins
2022-04-25 12:26:38 -05:00
Chris Roberts
0ad82cf04a
Ensure all remote plugins handle client setup
2022-04-25 12:26:38 -05:00
Chris Roberts
7e9dad2b3e
Add remote host plugin
2022-04-25 12:26:38 -05:00
Paul Hinze
ff86d86ac8
Provisioner Plugins
2022-04-25 12:26:37 -05:00
Chris Roberts
e07a77f919
Update wrapper classes to use remote plugin classes
2022-04-25 12:26:35 -05:00
Chris Roberts
aa98e48e28
Update remote plugins to subclass V2 plugins
2022-04-25 12:26:35 -05:00
Chris Roberts
095a0f8847
WIP checkpoint with callable remote provider action
2022-04-25 12:26:35 -05:00
Chris Roberts
0cf2ea2eb6
Update wrapper initializer to use client from manager
2022-04-25 12:26:35 -05:00
Chris Roberts
3d05ff7ce0
Set client into remote manager on enable and remove on disable
2022-04-25 12:26:35 -05:00
Chris Roberts
070292fb3b
Add class level storage for remote manager client
2022-04-25 12:26:35 -05:00
Paul Hinze
e9426b7a89
Switch to constant stub and add explanatory comment
2022-04-25 12:26:34 -05:00
Paul Hinze
952ba920bc
Return a static priority w/ synced folders in remote manager
...
Callers expect the manager to return both the class and an integer
priority... so we get a bare minimum working by returning something
reasonable.
2022-04-25 12:26:34 -05:00
sophia
b6de8c3a80
Add guest detect function to client
2022-04-25 12:26:34 -05:00
sophia
56edbfa3b8
Add guest remote plugin module
2022-04-25 12:26:33 -05:00
sophia
87f8c9cc5e
Implement synced folder prepare endpoint
2022-04-25 12:26:33 -05:00
Chris Roberts
8867dfc33c
Accept options hash for action methods
2022-04-25 12:26:31 -05:00
sophia
81a9d7b241
Pass machine to provider functions
2022-04-25 12:26:24 -05:00
sophia
fcf405bdf8
Run provider actions
2022-04-25 12:26:24 -05:00
sophia
8355209654
Accept machine for provider state endpoint
2022-04-25 12:26:24 -05:00
sophia
1e428a0812
Add mappers for provider
2022-04-25 12:26:24 -05:00
sophia
809e4044a0
Add provider remote plugin module
2022-04-25 12:26:23 -05:00
Paul Hinze
0fef7cc416
Port push plugins
...
This uses the new Push plugin support added to the plugin SDK in https://github.com/hashicorp/vagrant-plugin-sdk/pull/106 to make the following changes:
* The plugin manager on the Go side now registers push plugins
* The the _remote_ plugin manager on the Ruby side now calls over to
the go side to get push plugins
* All the wiring is hooked up such that when a push plugin is replaced
with its remote GRPC-client-wielding equivalent, the messages are
ferried around.
2022-04-25 12:26:21 -05:00
Chris Roberts
d8e959c89f
Connect synced folder to client in _initialize method
2022-04-25 12:26:16 -05:00
Chris Roberts
031890fcc7
Allow plugin manager to be swapped out for remote manager
2022-04-25 12:26:15 -05:00
Chris Roberts
23d0d9debb
Provide client using keyword argument for synced folder
2022-04-25 12:26:14 -05:00
Chris Roberts
fb2319f1e2
Implement remote plugin manager backed by vagrant go
2022-04-25 12:26:14 -05:00
sophia
1db38e65f8
Setup remote plugin manager when in server mode
2022-04-25 12:26:14 -05:00
sophia
94a203efc9
Inject dummy client into remote synced folders
2022-04-25 12:26:14 -05:00
sophia
05bbd9ec50
Use v2 manager to seed ruby plugins for remote manager
2022-04-25 12:26:13 -05:00
sophia
78fbd12da9
Use remote plugin manager when in server mode
2022-04-25 12:26:13 -05:00
sophia
d5007d4d85
Use remote plugin module when in server mode
2022-04-25 12:26:13 -05:00
sophia
e951c4d971
Add remote plugin manager
2022-04-25 12:26:13 -05:00
sophia
7a75ed6cbb
Get stdout and stderr from privledged execute
2022-04-25 12:26:13 -05:00
sophia
8e85561f61
Get stdout and stderr from command
2022-04-25 12:26:12 -05:00
sophia
ab395ad730
Move remote communicator to remote plugin module
2022-04-25 12:26:09 -05:00
sophia
10b4015455
Setup remote communincator
2022-04-25 12:26:07 -05:00
sophia
dc9fe12644
Disable checking for synced folder client
2022-04-25 12:26:07 -05:00
sophia
e71e887331
Move remote synced folder module into remote plugin module
2022-04-25 12:26:06 -05:00
sophia
847d87a017
Get synced folder from machine
2022-04-25 12:26:04 -05:00