From 39e7aaf2662403da12bf050476124b23105f6b72 Mon Sep 17 00:00:00 2001 From: Abel Coronado Date: Thu, 5 Oct 2017 12:40:02 +0200 Subject: [PATCH] B #5397: Deletion force configurable (OneFlow service) (#514) --- src/flow/etc/oneflow-server.conf | 3 +++ src/flow/lib/models/role.rb | 8 +++++++- src/flow/oneflow-server.rb | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/flow/etc/oneflow-server.conf b/src/flow/etc/oneflow-server.conf index 38b8064336..8c83fe4483 100644 --- a/src/flow/etc/oneflow-server.conf +++ b/src/flow/etc/oneflow-server.conf @@ -30,6 +30,9 @@ :host: 127.0.0.1 :port: 2474 +# Force deletion of VMs on terminate signal +:force_deletion: true + ################################################################################ # Defaults ################################################################################ diff --git a/src/flow/lib/models/role.rb b/src/flow/lib/models/role.rb index 85729e3047..e569fe4b39 100644 --- a/src/flow/lib/models/role.rb +++ b/src/flow/lib/models/role.rb @@ -349,7 +349,9 @@ module OpenNebula rc = vm.terminate(true) if OpenNebula.is_error?(rc) - rc = vm.delete + if @@force_deletion + rc = vm.delete + end end if OpenNebula.is_error?(rc) @@ -600,6 +602,10 @@ module OpenNebula @@default_shutdown = shutdown_action end + def self.init_force_deletion(force_deletion) + @@force_deletion = force_deletion + end + def self.init_default_vm_name_template(vm_name_template) @@vm_name_template = vm_name_template end diff --git a/src/flow/oneflow-server.rb b/src/flow/oneflow-server.rb index 2c76177e48..1c3cc05443 100644 --- a/src/flow/oneflow-server.rb +++ b/src/flow/oneflow-server.rb @@ -124,6 +124,7 @@ end Role.init_default_cooldown(conf[:default_cooldown]) Role.init_default_shutdown(conf[:shutdown_action]) +Role.init_force_deletion(conf[:force_deletion]) conf[:vm_name_template] ||= DEFAULT_VM_NAME_TEMPLATE Role.init_default_vm_name_template(conf[:vm_name_template])