From 0084ffc57c0bf678a2875322991d01de1eac4d43 Mon Sep 17 00:00:00 2001 From: mcabrerizo Date: Wed, 12 Apr 2017 09:58:31 +0200 Subject: [PATCH] F #4913: VC snapshot name will be One's id and VC snapshot description will be One's name F#4921 --- .../lib/vcenter_driver/virtual_machine.rb | 18 +++++++++--------- src/vmm_mad/remotes/vcenter/snapshot_delete | 7 +------ src/vmm_mad/remotes/vcenter/snapshot_revert | 7 +------ 3 files changed, 11 insertions(+), 21 deletions(-) diff --git a/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb b/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb index a5a2c7ac73..42faf147f2 100644 --- a/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb +++ b/src/vmm_mad/remotes/lib/vcenter_driver/virtual_machine.rb @@ -2172,8 +2172,8 @@ class VirtualMachine < Template # Create a snapshot for the VM def create_snapshot(snap_id, snap_name) snapshot_hash = { - :name => snap_name, - :description => "OpenNebula's snapshot at #{Time.now}", + :name => snap_id, + :description => "OpenNebula Snapshot: #{snap_name}", :memory => true, :quiesce => true } @@ -2211,10 +2211,10 @@ class VirtualMachine < Template end # Revert to a VM snapshot - def revert_snapshot(snap_id, snap_name) + def revert_snapshot(snap_id) snapshot_list = self["snapshot.rootSnapshotList"] - snapshot = find_snapshot_in_list(snapshot_list, snap_id, snap_name) + snapshot = find_snapshot_in_list(snapshot_list, snap_id) return nil if !snapshot @@ -2227,10 +2227,10 @@ class VirtualMachine < Template end # Delete VM snapshot - def delete_snapshot(snap_id, snap_name) + def delete_snapshot(snap_id) snapshot_list = self["snapshot.rootSnapshotList"] - snapshot = find_snapshot_in_list(snapshot_list, snap_id, snap_name) + snapshot = find_snapshot_in_list(snapshot_list, snap_id) return nil if !snapshot @@ -2245,12 +2245,12 @@ class VirtualMachine < Template end end - def find_snapshot_in_list(list, snap_id, snap_name) + def find_snapshot_in_list(list, snap_id) list.each do |i| - if i.name == snap_id.to_s || i.name == snap_name.to_s + if i.name == snap_id.to_s return i.snapshot elsif !i.childSnapshotList.empty? - snap = find_snapshot_in_list(i.childSnapshotList, snap_id, snap_name) + snap = find_snapshot_in_list(i.childSnapshotList, snap_id) return snap if snap end end rescue nil diff --git a/src/vmm_mad/remotes/vcenter/snapshot_delete b/src/vmm_mad/remotes/vcenter/snapshot_delete index eaeef5e910..dab7de7b43 100755 --- a/src/vmm_mad/remotes/vcenter/snapshot_delete +++ b/src/vmm_mad/remotes/vcenter/snapshot_delete @@ -31,7 +31,6 @@ require 'vcenter_driver' vm_ref = ARGV[0] snap_id = ARGV[1] -vm_id = ARGV[2] vc_cluster_name = ARGV[3] host = VCenterDriver::VIHelper.find_by_name(OpenNebula::HostPool, vc_cluster_name) @@ -42,11 +41,7 @@ begin vm = VCenterDriver::VirtualMachine.new_from_ref(vm_ref, vi_client) - # Get snapshot name - one_vm = VCenterDriver::VIHelper.one_item(OpenNebula::VirtualMachine, vm_id) - snap_name = one_vm["TEMPLATE/SNAPSHOT[SNAPSHOT_ID=#{snap_id}]/NAME"] - - vm.delete_snapshot(snap_id, snap_name) + vm.delete_snapshot(snap_id) rescue Exception => e STDERR.puts "Snapshot of VM #{vm_ref} on vCenter cluster "\ diff --git a/src/vmm_mad/remotes/vcenter/snapshot_revert b/src/vmm_mad/remotes/vcenter/snapshot_revert index 2a8687568b..bc630a26c9 100755 --- a/src/vmm_mad/remotes/vcenter/snapshot_revert +++ b/src/vmm_mad/remotes/vcenter/snapshot_revert @@ -31,7 +31,6 @@ require 'vcenter_driver' vm_ref = ARGV[0] snap_id = ARGV[1] -vm_id = ARGV[2] vc_cluster_name = ARGV[3] host = VCenterDriver::VIHelper.find_by_name(OpenNebula::HostPool, vc_cluster_name) @@ -42,11 +41,7 @@ begin vm = VCenterDriver::VirtualMachine.new_from_ref(vm_ref, vi_client) - # Get snapshot name - one_vm = VCenterDriver::VIHelper.one_item(OpenNebula::VirtualMachine, vm_id) - snap_name = one_vm["TEMPLATE/SNAPSHOT[SNAPSHOT_ID=#{snap_id}]/NAME"] - - vm.revert_snapshot(snap_id, snap_name) + vm.revert_snapshot(snap_id) rescue Exception => e STDERR.puts "Snapshot of VM #{vm_ref} on vCenter cluster "\