Module: VagrantPlugins::AVF::Action

Defined in:
lib/vagrant_provider_avf/action/up.rb,
lib/vagrant_provider_avf/action/ssh.rb,
lib/vagrant_provider_avf/action/halt.rb,
lib/vagrant_provider_avf/action/destroy.rb,
lib/vagrant_provider_avf/action/ssh_info.rb,
lib/vagrant_provider_avf/action/read_state.rb

Defined Under Namespace

Classes: Destroy, Halt, ReadState, SshInfo, Up

Class Method Summary collapse

Class Method Details

.action_destroy(machine, driver_factory:) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/vagrant_provider_avf/action/destroy.rb', line 4

def self.action_destroy(machine, driver_factory:)
  Vagrant::Action::Builder.new.tap do |builder|
    builder.use(
      Destroy,
      machine_id_store: MachineIdStore.new(machine),
      driver: driver_factory.call(machine)
    )
  end
end

.action_halt(machine, driver_factory:) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/vagrant_provider_avf/action/halt.rb', line 4

def self.action_halt(machine, driver_factory:)
  Vagrant::Action::Builder.new.tap do |builder|
    builder.use(
      Halt,
      machine_id_store: MachineIdStore.new(machine),
      driver: driver_factory.call(machine)
    )
  end
end

.action_read_state(machine, driver_factory:) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/vagrant_provider_avf/action/read_state.rb', line 4

def self.action_read_state(machine, driver_factory:)
  Vagrant::Action::Builder.new.tap do |builder|
    builder.use(
      ReadState,
      machine_id_store: MachineIdStore.new(machine),
      driver: driver_factory.call(machine)
    )
  end
end

.action_sshObject



4
5
6
7
8
# File 'lib/vagrant_provider_avf/action/ssh.rb', line 4

def self.action_ssh
  Vagrant::Action::Builder.new.tap do |builder|
    builder.use(Vagrant::Action::Builtin::SSHExec)
  end
end

.action_ssh_info(machine, driver_factory:) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/vagrant_provider_avf/action/ssh_info.rb', line 4

def self.action_ssh_info(machine, driver_factory:)
  Vagrant::Action::Builder.new.tap do |builder|
    builder.use(
      SshInfo,
      machine_id_store: MachineIdStore.new(machine),
      driver: driver_factory.call(machine)
    )
  end
end

.action_ssh_runObject



10
11
12
13
14
# File 'lib/vagrant_provider_avf/action/ssh.rb', line 10

def self.action_ssh_run
  Vagrant::Action::Builder.new.tap do |builder|
    builder.use(Vagrant::Action::Builtin::SSHRun)
  end
end

.action_up(machine, driver_factory:) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/vagrant_provider_avf/action/up.rb', line 4

def self.action_up(machine, driver_factory:)
  Vagrant::Action::Builder.new.tap do |builder|
    if machine.provider_config.boot_config.linux?
      builder.use(Vagrant::Action::Builtin::SyncedFolderCleanup)
      builder.use(Vagrant::Action::Builtin::SyncedFolders)
    end
    builder.use(
      Up,
      machine_id_store: MachineIdStore.new(machine),
      machine_requirements: machine.provider_config.machine_requirements,
      boot_config: machine.provider_config.boot_config,
      shared_directories: SharedDirectories.for(machine),
      driver: driver_factory.call(machine)
    )
    builder.use(Vagrant::Action::Builtin::WaitForCommunicator, [:running]) if machine.provider_config.boot_config.linux?
  end
end