diff --git a/src/flow/lib/EventManager.rb b/src/flow/lib/EventManager.rb index b6bc1a68d8..2608deb666 100644 --- a/src/flow/lib/EventManager.rb +++ b/src/flow/lib/EventManager.rb @@ -385,7 +385,7 @@ class EventManager vm_lcm_state = OpenNebula::VirtualMachine::LCM_STATE[vm.lcm_state] - if vm['VM/USER_TEMPLATE/READY'] == 'YES' + if vm['/VM/USER_TEMPLATE/READY'] == 'YES' rc_nodes[:successful] << node next true diff --git a/src/flow/lib/LifeCycleManager.rb b/src/flow/lib/LifeCycleManager.rb index e7937203d8..df3d1aa93b 100644 --- a/src/flow/lib/LifeCycleManager.rb +++ b/src/flow/lib/LifeCycleManager.rb @@ -834,7 +834,7 @@ class ServiceLCM service.roles.each do |name, role| next unless role.can_recover_deploy? - nodes = role.recover_deploy + nodes = role.recover_deploy(service.report_ready?) @event_manager.trigger_action(:wait_deploy, service.id, diff --git a/src/flow/lib/models/role.rb b/src/flow/lib/models/role.rb index 3ca57eb3b0..6a8b75c9e4 100644 --- a/src/flow/lib/models/role.rb +++ b/src/flow/lib/models/role.rb @@ -679,7 +679,7 @@ module OpenNebula # Recover ######################################################################## - def recover_deploy + def recover_deploy(report) nodes = @body['nodes'] deployed_nodes = [] @@ -702,7 +702,8 @@ module OpenNebula vm_state = vm.state lcm_state = vm.lcm_state - next false if vm_state == 3 && lcm_state == 3 # ACTIVE/RUNNING + # ACTIVE/RUNNING + next false if vm_state == 3 && lcm_state == 3 && !report next true if vm_state == '6' # Delete DONE nodes diff --git a/src/flow/oneflow-server.rb b/src/flow/oneflow-server.rb index f37e835f53..523920faf6 100644 --- a/src/flow/oneflow-server.rb +++ b/src/flow/oneflow-server.rb @@ -513,9 +513,9 @@ post '/service_template/:id/action' do end if custom_attrs && - !custom_attrs.empty? - custom_attrs_values && - !(custom_attrs.keys - custom_attrs_values.keys).empty? + !custom_attrs.empty? && + custom_attrs_values && + !(custom_attrs.keys - custom_attrs_values.keys).empty? return internal_error('Every custom_attrs key must have its ' \ 'value defined at custom_attrs_value', VALIDATION_EC)