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.
21 lines
432 B
Ruby
21 lines
432 B
Ruby
module VagrantPlugins
|
|
module CommandServe
|
|
module Client
|
|
class Push
|
|
prepend Util::ClientSetup
|
|
prepend Util::HasLogger
|
|
|
|
include Util::HasSeeds::Client
|
|
|
|
def push
|
|
logger.debug("doing push")
|
|
req = SDK::FuncSpec::Args.new(args: seed_protos)
|
|
res = client.push(req)
|
|
logger.debug("got response #{res}")
|
|
res
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|