diff --git a/src/dm/DispatchManagerActions.cc b/src/dm/DispatchManagerActions.cc index b44791792f..b19f2a4ea6 100644 --- a/src/dm/DispatchManagerActions.cc +++ b/src/dm/DispatchManagerActions.cc @@ -39,7 +39,9 @@ int DispatchManager::deploy ( NebulaLog::log("DiM",Log::DEBUG,oss); if ( vm->get_state() == VirtualMachine::PENDING || - vm->get_state() == VirtualMachine::HOLD ) + vm->get_state() == VirtualMachine::HOLD || + vm->get_state() == VirtualMachine::STOPPED || + vm->get_state() == VirtualMachine::UNDEPLOYED ) { Nebula& nd = Nebula::instance(); LifeCycleManager * lcm = nd.get_lcm(); diff --git a/src/rm/RequestManagerVirtualMachine.cc b/src/rm/RequestManagerVirtualMachine.cc index 5e968a37d8..fc35db4301 100644 --- a/src/rm/RequestManagerVirtualMachine.cc +++ b/src/rm/RequestManagerVirtualMachine.cc @@ -770,7 +770,9 @@ void VirtualMachineDeploy::request_execute(xmlrpc_c::paramList const& paramList, } if (vm->get_state() != VirtualMachine::PENDING && - vm->get_state() != VirtualMachine::HOLD) + vm->get_state() != VirtualMachine::HOLD && + vm->get_state() != VirtualMachine::STOPPED && + vm->get_state() != VirtualMachine::UNDEPLOYED) { failure_response(ACTION, request_error("Wrong state to perform action",""), diff --git a/src/sunstone/public/js/plugins/vms-tab.js b/src/sunstone/public/js/plugins/vms-tab.js index 0b9e8e1ff4..65d006d1da 100644 --- a/src/sunstone/public/js/plugins/vms-tab.js +++ b/src/sunstone/public/js/plugins/vms-tab.js @@ -60,7 +60,7 @@ var state_actions = { ["VM.delete", "VM.delete_recreate", "VM.recover"], 4: //OpenNebula.VM.state.STOPPED: - ["VM.delete", "VM.delete_recreate", "VM.resume"], + ["VM.delete", "VM.delete_recreate", "VM.resume", "VM.deploy"], 5: //OpenNebula.VM.state.SUSPENDED: ["VM.delete", "VM.resume"], @@ -75,7 +75,7 @@ var state_actions = { ["VM.delete", "VM.resume", "VM.resize", "VM.attachdisk", "VM.detachdisk", "VM.attachnic", "VM.detachnic"], 9: //OpenNebula.VM.state.UNDEPLOYED: - ["VM.delete", "VM.delete_recreate", "VM.resume", "VM.resize"], + ["VM.delete", "VM.delete_recreate", "VM.resume", "VM.resize", "VM.deploy"], } var lcm_state_actions = {