]> Creatis software - clitk.git/commitdiff
more grid scripts
authorpgueth <pgueth@kingkong.grid.creatis.insa-lyon.fr>
Thu, 3 Mar 2011 17:08:46 +0000 (18:08 +0100)
committerDavid Sarrut <david.sarrut@creatis.insa-lyon.fr>
Thu, 20 Jun 2013 10:54:28 +0000 (12:54 +0200)
grid/upload_release.sh [new file with mode: 0755]

diff --git a/grid/upload_release.sh b/grid/upload_release.sh
new file mode 100755 (executable)
index 0000000..5b55822
--- /dev/null
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+set -u
+
+# print error message and exit immediately
+programname="$(basename ${0})"
+function error {
+echo "${programname} **ERROR** $1"
+exit 1
+}
+
+# ensure a valid proxy is present for at least one hour
+# if no proxy is found, try to create a new one
+# return 0 if a valid proxy is found or created
+# else return voms-proxy-init error code
+function ensure_proxy {
+voms-proxy-info --exists -valid 1:0 > /dev/null && return 0 
+voms-proxy-init --voms biomed -valid 24:00 || exit 1
+}
+
+# print prompt to ensure that the user want to continue further
+# the user has to answer with 'y' to continue
+function check_user {
+prompt="${1:-is that correct?}"
+read -p "${prompt} [y/n] " answer
+test "${answer}" == "y" && return 0
+test "${answer}" == "n" && return 1
+check_user "${prompt}"
+}
+
+
+releaselfndir="/grid/biomed/creatis/fgate/releases/"
+prefix="${USER:?"USER must be set"}_"
+releasearchive=${1:?"provide path to release archive"}
+targetreleasearchive="${prefix}$(basename "${releasearchive}")"
+
+ensure_proxy || error "no valid proxy"
+
+echo "targetreleasearchive=${targetreleasearchive}"
+echo "releaselfndir=${releaselfndir}"
+check_user || error "user doesn't agree"
+