diff options
author | Yves Fischer <yvesf-git@xapek.org> | 2016-02-27 15:58:12 +0100 |
---|---|---|
committer | Yves Fischer <yvesf-git@xapek.org> | 2016-02-27 15:58:12 +0100 |
commit | a307e0474e78c51590aeac95dbc5587a87ef6501 (patch) | |
tree | c5c7ca86b0b86704a4c1adc588e7ce249826e98f /packages/scripts-cern/resources/bin | |
parent | 77955935e9549a847ae7e0d78819f090d429fdb6 (diff) | |
download | debian-packages-a307e0474e78c51590aeac95dbc5587a87ef6501.tar.gz debian-packages-a307e0474e78c51590aeac95dbc5587a87ef6501.zip |
refactor scripts packages
Diffstat (limited to 'packages/scripts-cern/resources/bin')
-rwxr-xr-x | packages/scripts-cern/resources/bin/database-tunnels.sh | 48 | ||||
-rwxr-xr-x | packages/scripts-cern/resources/bin/restart-gwt.sh | 16 |
2 files changed, 64 insertions, 0 deletions
diff --git a/packages/scripts-cern/resources/bin/database-tunnels.sh b/packages/scripts-cern/resources/bin/database-tunnels.sh new file mode 100755 index 0000000..1f74c84 --- /dev/null +++ b/packages/scripts-cern/resources/bin/database-tunnels.sh @@ -0,0 +1,48 @@ +#!/bin/bash +REMOTE_UNC_PATH="//cerndfs.cern.ch/dfs/Applications/Oracle" +AISADM_IP=aisadm.cern.ch +AISADM_FINGERPRINT="`dirname \"$0\"`/../lib/aisadm-fingerprint" +SSH_USER=$USER +TNSNAMES="$HOME/.cache/tnsnames" +LOCAL=false +TEMP=`getopt -o phl: --long help,local,user: \ + -n '$0' -- "$@"` +if [ $? != 0 ] ; then echo "Failed to parse arguments..." >&2 ; exit 1 ; fi + +# Note the quotes around `$TEMP': they are essential! +eval set -- "$TEMP" + +function print() { echo -e "\e]0;$1\a"; echo "$1"; } + +while true ; do + case "$1" in + -p|--local) LOCAL=true ; shift ;; + -l|--user) shift; SSH_USER=$1; shift ;; + -h|--help) echo "$0 [--help|--local] [-l <name>|--user <name>]"; exit 0;; + --) shift ; break ;; + *) echo "Internal error! ($*)" ; exit 1 ;; + esac +done + +if ! $LOCAL; then + print "Mirror tnsnames.ore files to $TNSNAMES" && + mkdir -p "$TNSNAMES/admin" "$TNSNAMES/admin_localhost" && + smbclient -k "$REMOTE_UNC_PATH" -D ADMIN_localhost -TXc - 'ADMIN_localhost/OLD' | tar --strip-components=2 -x -C "$TNSNAMES/admin_localhost" && + smbclient -k "$REMOTE_UNC_PATH" -D ADMIN -TXc - 'ADMIN/OLD'| tar --strip-components=2 -x -C "$TNSNAMES/admin" || + echo "failed to mirror tnsnames to $TNSNAMES" >&2 +fi + +if $LOCAL; then + SSH_EXTRAOPTS="-oProxyCommand=ssh -l \"$SSH_USER\" lxplus.cern.ch nc $AISADM_IP 22" +else + true +fi + +print "Database Tunnel" && + ssh -l "$SSH_USER" \ + -L 10301:cman1.cern.ch:10300 -L 10302:cman2.cern.ch:10300 \ + -o UserKnownHostsFile=$AISADM_FINGERPRINT \ + ${SSH_EXTRAOPTS:+"$SSH_EXTRAOPTS"} \ + $AISADM_IP \ + "date; echo tunnel is running; cat" + diff --git a/packages/scripts-cern/resources/bin/restart-gwt.sh b/packages/scripts-cern/resources/bin/restart-gwt.sh new file mode 100755 index 0000000..3870874 --- /dev/null +++ b/packages/scripts-cern/resources/bin/restart-gwt.sh @@ -0,0 +1,16 @@ +#!/bin/sh +set -x +pid=`jps | grep DevMode | cut -f 1 -d ' '` +if [ -z "$pid" ]; then + echo "no running gwt-client found" >&2 + exit 1 +fi + +cwd=`readlink "/proc/${pid}/cwd"` +cmd=`cat "/proc/${pid}/cmdline" | tr '\0' ' '` +cd "$cwd" +kill -9 "$pid" + +sleep 1 +$cmd >/dev/null 2>&1 & +disown -ar |