Class: VmShepherd::VcloudManager

Inherits:
Object
  • Object
show all
Defined in:
lib/vm_shepherd/vcloud_manager.rb

Instance Method Summary collapse

Constructor Details

#initialize(login_info, vdc_name, logger) ⇒ VcloudManager

Returns a new instance of VcloudManager.



7
8
9
10
11
# File 'lib/vm_shepherd/vcloud_manager.rb', line 7

def initialize(, vdc_name, logger)
  @login_info = 
  @vdc_name = vdc_name
  @logger = logger
end

Instance Method Details

#clean_environment(vapp_names, catalog) ⇒ Object



35
36
37
# File 'lib/vm_shepherd/vcloud_manager.rb', line 35

def clean_environment(vapp_names, catalog)
  destroy(vapp_names, catalog)
end

#deploy(vapp_template_tar_path, vapp_config) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/vm_shepherd/vcloud_manager.rb', line 13

def deploy(vapp_template_tar_path, vapp_config)
  tmpdir = Dir.mktmpdir

  check_vapp_status(vapp_config)

  untar_vapp_template_tar(File.expand_path(vapp_template_tar_path), tmpdir)

  vapp = deploy_vapp(tmpdir, vapp_config)
  reconfigure_vm(vapp, vapp_config)
  vapp.power_on
ensure
  FileUtils.remove_entry_secure(tmpdir, force: true)
end

#destroy(vapp_names, catalog) ⇒ Object



30
31
32
33
# File 'lib/vm_shepherd/vcloud_manager.rb', line 30

def destroy(vapp_names, catalog)
  delete_vapps(vapp_names)
  delete_catalog(catalog)
end

#prepare_environmentObject



27
28
# File 'lib/vm_shepherd/vcloud_manager.rb', line 27

def prepare_environment
end