This method is intended to be used to reset an error condition on an
instance.  It calls condor_rm on the job in question so that a new job
can be started.

This version uses -forcex to ensure the job gets rightfully slain.

Signed-off-by: Ian Main <[email protected]>
---
 src/app/util/condormatic.rb |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/src/app/util/condormatic.rb b/src/app/util/condormatic.rb
index e051c24..df2cc81 100644
--- a/src/app/util/condormatic.rb
+++ b/src/app/util/condormatic.rb
@@ -161,6 +161,18 @@ def condormatic_instance_stop(task)
     Rails.logger.error("Error calling condor_rm (exit code #{$?}) on job: 
#{out}") if $? != 0
 end
 
+def condormatic_instance_reset_error(task)
+    instance = task.instance
+
+    Rails.logger.info("calling condor_rm -forcex -constraint 'Cmd == 
\"#{instance.condor_job_id}\"' 2>&1")
+    pipe = IO.popen("condor_rm -forcex -constraint 'Cmd == 
\"#{instance.condor_job_id}\"' 2>&1")
+    out = pipe.read
+    pipe.close
+
+    Rails.logger.info("condor_rm return status is #{$?}")
+    Rails.logger.error("Error calling condor_rm (exit code #{$?}) on job: 
#{out}") if $? != 0
+end
+
 def condormatic_instance_destroy(task)
     instance = task.instance
 
-- 
1.7.2.3

_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel

Reply via email to