From e020c6600e0d4ecbe2cd55be89f443dddafc8123 Mon Sep 17 00:00:00 2001 From: sophia Date: Thu, 14 Apr 2022 10:44:06 -0500 Subject: [PATCH] Hacks to let a remote machine be instantiated with or with out a client --- lib/vagrant/environment/remote.rb | 8 ++++++++ lib/vagrant/machine/remote.rb | 4 ++-- plugins/commands/serve/mappers/machine.rb | 2 +- test/unit/vagrant/machine/remote_test.rb | 1 + 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/vagrant/environment/remote.rb b/lib/vagrant/environment/remote.rb index 464d34abc..c53585730 100644 --- a/lib/vagrant/environment/remote.rb +++ b/lib/vagrant/environment/remote.rb @@ -105,6 +105,14 @@ module Vagrant client.default_provider.to_sym end + # Gets a target (machine) by name + # + # @param [String] machine name + # return [VagrantPlugins::CommandServe::Client::Machine] + def get_target(name) + client.target(name) + end + # Returns the host object associated with this environment. # # @return [Class] diff --git a/lib/vagrant/machine/remote.rb b/lib/vagrant/machine/remote.rb index 7c52e5c2c..7cf9cd27b 100644 --- a/lib/vagrant/machine/remote.rb +++ b/lib/vagrant/machine/remote.rb @@ -60,8 +60,8 @@ module Vagrant @name = name @ui_mutex = Mutex.new @state_mutex = Mutex.new - # TODO: pass in trigger config (@config.trigger) - @triggers = Vagrant::Plugin::V2::Trigger.new(@env, nil, self, @ui) + # TODO: get trigger config from go + @triggers = Vagrant::Plugin::V2::Trigger.new(@env, @config.trigger, self, @ui) # If the ID is the special not created ID, then set our ID to # nil so that we destroy all our data. diff --git a/plugins/commands/serve/mappers/machine.rb b/plugins/commands/serve/mappers/machine.rb index 98b815dfe..281b41770 100644 --- a/plugins/commands/serve/mappers/machine.rb +++ b/plugins/commands/serve/mappers/machine.rb @@ -64,7 +64,7 @@ module VagrantPlugins def converter(target) m = target.to_machine - Vagrant::Machine.new(client=m) + Vagrant::Machine.new(nil, nil, nil, {}, {}, nil, nil, nil, nil, nil, base=false, client=m) end end diff --git a/test/unit/vagrant/machine/remote_test.rb b/test/unit/vagrant/machine/remote_test.rb index 91c422114..53d88eacf 100644 --- a/test/unit/vagrant/machine/remote_test.rb +++ b/test/unit/vagrant/machine/remote_test.rb @@ -80,6 +80,7 @@ describe Vagrant::Machine::Remote do before do + allow(env).to receive(:get_target) { client } allow(client).to receive(:box) { box } allow(client).to receive(:data_dir) { data_dir } allow(client).to receive(:name) { name }