knife-vsphere 1.2.7 → 1.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d1ace6fae44de22b6372e167868b2e3710019f59
4
- data.tar.gz: 3073721416e47f816a9da1b73570a8625cb9149b
3
+ metadata.gz: 6e85bab504b011a44e58f635248bc9603285665b
4
+ data.tar.gz: 45a6bea0b1737a6af5a09d692ce195d560a32ccc
5
5
  SHA512:
6
- metadata.gz: 18b0c95d0f67588d8f103c27f3ce83be4f9e5ddebb393fb20609bcd2fe016710d5a15265e2ad3eaab3a3ab62fb7b2686b82eb4072107ccda8febf69168c8b3b9
7
- data.tar.gz: cce7f5a115fd16d2d1476a78b03edc932c46acf58a68641bdabbacc2d7d0cfdb0bacf3cd83215ab97f36e19b358729996d1e58957fdfa05e89ba047a620c187a
6
+ metadata.gz: e7569807caee36f7cc4c36cec71f2d668c6fcc4f6a1ac865ef79869a6333cd8b70288dc9f0324c60dbe0999a7fc61d00784c70213b51be6e606b5702ba672f67
7
+ data.tar.gz: 950c30592dbeca0397b08b4902b1a558bfa0f508dc977faa624f1fdded2bd3e32465a920e6674b7088c7945ae2cae8653e7d3b6cee90f6604ccc8a7ef2d5941a
@@ -558,8 +558,9 @@ class Chef::Knife::VsphereVmClone < Chef::Knife::BaseVsphereCommand
558
558
  fullName: cust_spec.identity.userData.fullName,
559
559
  orgName: cust_spec.identity.userData.orgName,
560
560
  productId: cust_spec.identity.userData.productId,
561
- computerName: cust_spec.identity.userData.computerName
561
+ computerName: RbVmomi::VIM.CustomizationFixedName(name: hostname)
562
562
  )
563
+
563
564
  gui_unattended = RbVmomi::VIM.CustomizationGuiUnattended(
564
565
  autoLogon: cust_spec.identity.guiUnattended.autoLogon,
565
566
  autoLogonCount: cust_spec.identity.guiUnattended.autoLogonCount,
@@ -57,11 +57,11 @@ class Chef::Knife::VsphereVmMove < Chef::Knife::BaseVsphereCommand
57
57
 
58
58
  # Move VM
59
59
  def move_vm(vm)
60
- dest_name = config[:dest_name] || vmname
60
+ dest_name = config[:dest_name] || vm.name
61
61
  dest_folder = config[:dest_folder].nil? ? (vm.parent) : (find_folder(get_config(:dest_folder)))
62
62
 
63
- vm.Rename_Task(newName: dest_name).wait_for_completion unless vmname == dest_name
64
- dest_folder.MoveIntoFolder_Task(list: [vm]).wait_for_completion unless folder == dest_folder
63
+ vm.Rename_Task(newName: dest_name).wait_for_completion unless vm.name == dest_name
64
+ dest_folder.MoveIntoFolder_Task(list: [vm]).wait_for_completion unless vm.parent == dest_folder
65
65
  end
66
66
 
67
67
  def run
@@ -84,5 +84,7 @@ class Chef::Knife::VsphereVmMove < Chef::Knife::BaseVsphereCommand
84
84
  else
85
85
  move_vm(vm)
86
86
  end
87
+
88
+ puts "VM #{vm.name} moved successfully"
87
89
  end
88
90
  end
@@ -44,6 +44,19 @@ class Chef::Knife::VsphereVmSnapshot < Chef::Knife::BaseVsphereCommand
44
44
  description: 'Indicates whether to wait for creation/removal to complete',
45
45
  boolean: false
46
46
 
47
+ option :find,
48
+ long: '--find',
49
+ description: 'Finds the virtual machine by searching all folders'
50
+
51
+ option :dump_memory,
52
+ long: '--dump-memory',
53
+ description: 'Dump the memory in the snapshot',
54
+ default: false
55
+
56
+ option :quiesce,
57
+ long: '--quiesce',
58
+ description: 'Quiesce the VM prior to snapshotting',
59
+ default: false
47
60
 
48
61
  def run
49
62
  $stdout.sync = true
@@ -57,37 +70,45 @@ class Chef::Knife::VsphereVmSnapshot < Chef::Knife::BaseVsphereCommand
57
70
 
58
71
  vim_connection
59
72
 
60
- base_folder = find_folder(get_config(:folder))
61
-
62
- vm = find_in_folder(base_folder, RbVmomi::VIM::VirtualMachine, vmname) || abort("VM #{vmname} not found")
73
+ vm = if get_config(:find)
74
+ puts "No folder entered, searching for #{vmname}"
75
+ src_folder = find_folder(get_config(:folder))
76
+ traverse_folders_for_vm(src_folder, vmname)
77
+ else
78
+ base_folder = find_folder get_config(:folder)
79
+ find_in_folder(base_folder, RbVmomi::VIM::VirtualMachine, vmname) || abort("VM #{vmname} not found")
80
+ end
63
81
 
64
82
  if vm.snapshot
65
83
  snapshot_list = vm.snapshot.rootSnapshotList
66
84
  current_snapshot = vm.snapshot.currentSnapshot
67
85
  end
68
86
 
69
- if config[:list] && vm.snapshot
87
+ if get_config(:list) && vm.snapshot
70
88
  puts 'Current snapshot tree: '
71
89
  puts "#{vmname}"
72
90
  snapshot_list.each { |i| puts display_node(i, current_snapshot) }
73
91
  end
74
92
 
75
- if config[:create_new_snapshot]
76
- snapshot_task=vm.CreateSnapshot_Task(name: config[:create_new_snapshot], description: '', memory: false, quiesce: false)
77
- snapshot_task=snapshot_task.wait_for_completion if config[:wait]
93
+ if get_config(:create_new_snapshot)
94
+ snapshot_task = vm.CreateSnapshot_Task(name: get_config(:create_new_snapshot),
95
+ description: '',
96
+ memory: get_config(:dump_memory),
97
+ quiesce: get_config(:quiesce))
98
+ snapshot_task = snapshot_task.wait_for_completion if get_config(:wait)
78
99
  snapshot_task
79
100
  end
80
101
 
81
- if config[:remove_named_snapshot]
82
- ss_name = config[:remove_named_snapshot]
102
+ if get_config(:remove_named_snapshot)
103
+ ss_name = get_config(:remove_named_snapshot)
83
104
  snapshot = find_node(snapshot_list, ss_name)
84
105
  puts "Found snapshot #{ss_name} removing."
85
- snapshot_task=snapshot.RemoveSnapshot_Task(removeChildren: false)
86
- snapshot_task=snapshot_task.wait_for_completion if config[:wait]
106
+ snapshot_task = snapshot.RemoveSnapshot_Task(removeChildren: false)
107
+ snapshot_task = snapshot_task.wait_for_completion if get_config(:wait)
87
108
  snapshot_task
88
109
  end
89
110
 
90
- if config[:revert_current_snapshot]
111
+ if get_config(:revert_current_snapshot)
91
112
  puts 'Reverting to Current Snapshot'
92
113
  vm.RevertToCurrentSnapshot_Task(suppressPowerOn: false).wait_for_completion
93
114
  if get_config(:power)
@@ -96,8 +117,8 @@ class Chef::Knife::VsphereVmSnapshot < Chef::Knife::BaseVsphereCommand
96
117
  end
97
118
  end
98
119
 
99
- return unless config[:revert_snapshot]
100
- ss_name = config[:revert_snapshot]
120
+ return unless get_config(:revert_snapshot)
121
+ ss_name = get_config(:revert_snapshot)
101
122
  snapshot = find_node(snapshot_list, ss_name)
102
123
  snapshot.RevertToSnapshot_Task(suppressPowerOn: false).wait_for_completion
103
124
  return unless get_config(:power)
@@ -1,3 +1,3 @@
1
1
  module KnifeVsphere
2
- VERSION = '1.2.7'
2
+ VERSION = '1.2.8'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knife-vsphere
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.7
4
+ version: 1.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ezra Pagel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-12 00:00:00.000000000 Z
11
+ date: 2016-03-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: filesize