diff options
author | Paul Sokolovsky <paul.sokolovsky@linaro.org> | 2013-11-19 19:30:42 +0200 |
---|---|---|
committer | Paul Sokolovsky <paul.sokolovsky@linaro.org> | 2013-11-19 19:30:42 +0200 |
commit | b1c770ba09dce085117e9eabc078ed2f9a48fc0b (patch) | |
tree | f6344533831d7dcaceee89ad0838b09686be9b5d /utils | |
parent | 3507e13441f23754bd3ae3c6636d25298cab8d62 (diff) |
Move backup script to utils/.
Diffstat (limited to 'utils')
-rwxr-xr-x | utils/backup/backup.sh | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/utils/backup/backup.sh b/utils/backup/backup.sh new file mode 100755 index 0000000..68e9a30 --- /dev/null +++ b/utils/backup/backup.sh @@ -0,0 +1,39 @@ +#!/bin/sh +# +# Script to automate Jenkins config configuration backup to git. +# This mostly deals with job config backups - commit other changes +# manually (with good commit messages). +# +set -x + +HOST="ubuntu@android-build.linaro.org" +# Auth proxy (-A) is mandatory for push access +SSH_OPTS="-A" +SSH="ssh $SSH_OPTS" + + +if [ "$1" = "" ]; then + echo "Usage: $0 status|diff|commit" + exit 1 +fi + +if [ "$1" = "status" ]; then + $SSH $HOST "cd /var/lib/jenkins; git status jobs" +elif [ "$1" = "status-all" ]; then + $SSH $HOST "cd /var/lib/jenkins; git status" +elif [ "$1" = "diff" ]; then + $SSH $HOST "cd /var/lib/jenkins; git diff jobs" | less +elif [ "$1" = "diff-all" ]; then + $SSH $HOST "cd /var/lib/jenkins; git diff" | less +elif [ "$1" = "commit" ]; then + if [ "$2" = "" ]; then + msg="Routine jobs update" + $SSH $HOST "cd /var/lib/jenkins; git commit -m \"$msg\" jobs" + msg="Capture new jobs" + $SSH $HOST "cd /var/lib/jenkins; git add jobs; git commit -m \"$msg\" jobs" + else + $SSH $HOST "cd /var/lib/jenkins; git commit -m \"$2\" jobs" + fi +elif [ "$1" = "push" ]; then + $SSH $HOST "cd /var/lib/jenkins; git push" +fi |