Skip to content

Commit 3b61bf7

Browse files
committed
Merge pull request #202 from harsha-lokesh/master
[Fix] Issues JIRA 193 200 fix for the guest restart and shutdown from manageIA UI
2 parents e74f865 + 6224715 commit 3b61bf7

2 files changed

Lines changed: 36 additions & 0 deletions

File tree

  • app/models/manageiq/providers/ibm_power_hmc/infra_manager
  • spec/models/manageiq/providers/ibm_power_hmc/infra_manager

app/models/manageiq/providers/ibm_power_hmc/infra_manager/vm.rb

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,22 @@ class ManageIQ::Providers::IbmPowerHmc::InfraManager::Vm < ManageIQ::Providers::
2020
_("Host is not HMC-managed") unless host_hmc_managed
2121
end
2222

23+
supports :shutdown_guest do
24+
if !vm_powered_on?
25+
_("The VM is not powered on")
26+
else
27+
unsupported_reason(:control)
28+
end
29+
end
30+
31+
supports :reboot_guest do
32+
if !vm_powered_on?
33+
_("The VM is not powered on")
34+
else
35+
unsupported_reason(:control)
36+
end
37+
end
38+
2339
supports :native_console do
2440
unsupported_reason(:action)
2541
end

spec/models/manageiq/providers/ibm_power_hmc/infra_manager/lpar_spec.rb

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,26 @@
4545
expect(vm.supports?(:stop)).to be false
4646
expect(vm.supports?(:suspend)).to be false
4747
end
48+
it "supports guest operations when powered on" do
49+
host.advanced_settings.create!(:name => "hmc_managed", :value => "true")
50+
vm.raw_power_state = "running"
51+
expect(vm.vm_powered_on?).to be_truthy
52+
expect(vm.supports?(:shutdown_guest)).to be_truthy, "unsupported reason: #{vm.unsupported_reason(:shutdown_guest)}"
53+
expect(vm.supports?(:reboot_guest)).to be_truthy, "unsupported reason: #{vm.unsupported_reason(:reboot_guest)}"
54+
end
55+
it "does not support guest operations when powered off" do
56+
host.advanced_settings.create!(:name => "hmc_managed", :value => "true")
57+
vm.raw_power_state = "not activated"
58+
expect(vm.vm_powered_on?).to be_falsey
59+
expect(vm.supports?(:shutdown_guest)).to be_falsey
60+
expect(vm.supports?(:reboot_guest)).to be_falsey
61+
end
62+
it "does not support guest operations when host not HMC-managed" do
63+
host.advanced_settings.create!(:name => "hmc_managed", :value => "false")
64+
vm.raw_power_state = "running"
65+
expect(vm.supports?(:shutdown_guest)).to be false
66+
expect(vm.supports?(:reboot_guest)).to be false
67+
end
4868
it "does not support power operations" do
4969
host.advanced_settings.create!(:name => "hmc_managed", :value => "false")
5070
vm.raw_power_state = "running"

0 commit comments

Comments
 (0)