From 2211214a4e7ed51d523ab8a361a19d9100c154e5 Mon Sep 17 00:00:00 2001 From: Jaime Melis Date: Fri, 11 Jul 2014 00:41:27 +0200 Subject: [PATCH] Feature #2917: Add RUNNING=TRUE to the USER_TEMPLATE if the VM contacts OneGate --- src/onegate/onegate-server.rb | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/onegate/onegate-server.rb b/src/onegate/onegate-server.rb index 6f1e0d7f2d..fa3585f56b 100644 --- a/src/onegate/onegate-server.rb +++ b/src/onegate/onegate-server.rb @@ -115,7 +115,14 @@ put '/vm/:id' do halt 404, rc.message end - rc = vm.update(request.body.read, true) + body = request.body.read + + # Sets the RUNNING tag + if vm['USER_TEMPLATE/RUNNING'].nil? + body << "\nRUNNING=TRUE" + end + + rc = vm.update(body, true) if OpenNebula.is_error?(rc) logger.error {"VMID:#{params[:id]} vm.update error: #{rc.message}"} @@ -139,6 +146,16 @@ get '/vm/:id' do halt 404, rc.message end + # Sets the RUNNING tag + if vm['USER_TEMPLATE/RUNNING'].nil? + rc = vm.update("RUNNING=TRUE", true) + + if OpenNebula.is_error?(rc) + logger.error {"VMID:#{params[:id]} vm.update error: #{rc.message}"} + halt 500, rc.message + end + end + service_id = vm['USER_TEMPLATE/SERVICE_ID'] if service_id.nil? || !service_id.match(/^\d+$/)