From 31fffb8cc83b8c28be21b29d390500d9862f2f43 Mon Sep 17 00:00:00 2001
From: Efthymia Bika <ey8ymia@grnet.gr>
Date: Wed, 24 Feb 2016 12:26:56 +0200
Subject: [PATCH] Unlink lockfiles on exit

---
 baas/config.js    | 10 ++++++++--
 baas/dup_calls.js |  5 +++--
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/baas/config.js b/baas/config.js
index 9503a71..5a7b6cc 100644
--- a/baas/config.js
+++ b/baas/config.js
@@ -207,7 +207,13 @@ function kill_callback(error, stdout, stderr) {
 
 function kill_processes() {
     for(var i = 0; i < running_processes.length; i++) {
-        console.log(running_processes[i]);
-        running_processes[i].kill();
+        console.log("About to kill " + running_processes[i][0].pid);
+        running_processes[i][0].kill();
+        var lockfile =
+            path.join(BAAS_ARCHIVE_DIR, running_processes[i][1],
+                    "lockfile.lock");
+        console.log("About to unlink lockfile " + lockfile);
+        fs.unlinkSync(lockfile);
+
     }
 }
diff --git a/baas/dup_calls.js b/baas/dup_calls.js
index 87b3990..4365517 100644
--- a/baas/dup_calls.js
+++ b/baas/dup_calls.js
@@ -231,7 +231,8 @@ function call_duplicity(mode, backup_set, force) {
     var backup_name = (backup_set) ?
         backup_set.cloud + "/" + backup_set.name :
         $("#res-cloud").val() + "/" + $("#res-backup-name");
-    args.push("--name", SHA256(backup_name));
+    backup_name = SHA256(backup_name).toString();
+    args.push("--name", backup_name);
 
     var sel_cloud = (backup_set) ? backup_set.cloud :
         $("#res-cloud").val();
@@ -244,7 +245,7 @@ function call_duplicity(mode, backup_set, force) {
     // call duplicity
     var wProcess = null;
     wProcess = spawn(ENV_CMD, args, {env: make_env()});
-    running_processes.push(wProcess);
+    running_processes.push([wProcess, backup_name]);
 
     var output_str = "";
     function dup_call_out(data) {
-- 
GitLab