25 Commits

Author SHA1 Message Date
Chris Roberts
55512ca0ef Provide easy access to global cache in clients 2022-06-15 11:02:29 -07:00
sophia
428c3b02fd
Use remote box metadata implementation 2022-04-25 12:26:52 -05:00
sophia
b3003e8cb6
Add core plugin service client 2022-04-25 12:26:50 -05:00
Chris Roberts
83ca40e239
Refactor Ruby service implementations
Update the Ruby service implementations to use the funcspec util
    module for generating spec content. A helper method is now used
    for generating a parent class for services to subclass which
    automatically includes all required modules for usage.
2022-04-25 12:26:37 -05:00
Paul Hinze
ff86d86ac8
Provisioner Plugins 2022-04-25 12:26:37 -05:00
sophia
19f3d2f0b6
Refactor named plugin bits to apply to all components 2022-04-25 12:26:33 -05:00
Chris Roberts
e533d9f0a8
Convert client to class and populate with modules 2022-04-25 12:26:28 -05:00
sophia
c48e43a12a
Add provider ruby client 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
23c99b5806
Implement command and plugin manager clients 2022-04-25 12:26:15 -05:00
sophia
1272c087b9
Setup communincator client 2022-04-25 12:26:07 -05:00
sophia
fb5c2dd339
Add basis client module 2022-04-25 12:26:04 -05:00
sophia
f70b7268f2
Start adding synced folder client 2022-04-25 12:26:03 -05:00
sophia
fd0df0865c
Add box collection client 2022-04-25 12:25:56 -05:00
sophia
235cafddcc
Add box client 2022-04-25 12:25:53 -05:00
Chris Roberts
35277eff21
Remove machine autoload from client top level 2022-04-25 12:24:43 -05:00
sophia
881502654b
Create statebag ruby client 2022-04-25 12:24:40 -05:00
sophia
a2ade36a74
Setup host client so that a golang based host may be used 2022-04-25 12:24:39 -05:00
Chris Roberts
dc32d6e9a0
Clean up constant aliases and set at top level for everyone 2022-04-25 12:24:38 -05:00
sophia
34e7105193
Add guest client 2022-04-25 12:24:36 -05:00
Chris Roberts
d48ec9ace2
Update index autoload entry and target autoload 2022-04-25 12:24:30 -05:00
sophia
c123335456
Save point: connect to machine index service 2022-04-25 12:24:26 -05:00
sophia
340c2d7b19
Save point: load target from project 2022-04-25 12:24:09 -05:00
Chris Roberts
3d000609ec
Update autoload definition for terminal client 2022-04-25 12:24:05 -05:00
Chris Roberts
afa31bff58
Provide client and service loader files
The service also includes a service info helper class that
    can wrap requests and extract execution context of request.
    This includes the vagrant service endpoint for connecting
    a client back to the service and the scope of the request.
    It also provides a helper for creating and reusing clients.
2022-04-25 12:23:55 -05:00