Class: VagrantPlugins::WindowsDomain::LeaveDomain

Inherits:
Object
  • Object
show all
Includes:
VagrantPlugins::WindowsDomain
Defined in:
lib/vagrant-windows-domain/action/leave_domain.rb

Instance Method Summary collapse

Methods included from VagrantPlugins::WindowsDomain

source_root

Constructor Details

#initialize(app, env) ⇒ LeaveDomain

Returns a new instance of LeaveDomain.



9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/vagrant-windows-domain/action/leave_domain.rb', line 9

def initialize(app, env)
  @logger = Log4r::Logger.new("vagrant::provisioners::vagrant_windows_domain")
  @logger.debug("Initialising WindowsDomain plugin on destroy action")
  @app = app
  @machine = env[:machine]

  @machine.config.vm.provisioners.each do |prov|
    @config = prov.config if prov.config.is_a?(VagrantPlugins::WindowsDomain::Config)
  end

  @provisioner = VagrantPlugins::WindowsDomain::Provisioner.new(@machine, @config)
end

Instance Method Details

#call(env) ⇒ Object



22
23
24
25
26
27
28
29
30
# File 'lib/vagrant-windows-domain/action/leave_domain.rb', line 22

def call(env)
  if @config
    @logger.debug("Configuration detected, triggering leave domain action")
    @provisioner.destroy
    @app.call(env)
  else
    @logger.debug("No configuration detected, not leaving any domain")
  end
end