From 30a0063c63e8fd415d1c0845723869719d039cf6 Mon Sep 17 00:00:00 2001 From: Daniel Narvaez Date: Sat, 24 Nov 2012 22:27:57 +0000 Subject: Split and improve snapshot generation --- diff --git a/Makefile.buildbot b/Makefile.buildbot index 90354cd..3f1cde9 100644 --- a/Makefile.buildbot +++ b/Makefile.buildbot @@ -11,16 +11,10 @@ upload-docs: upload-snapshot: @TMP_DIR=`mktemp -td sugar-build-snapshot-XXXX` && \ - SNAPSHOT_FILENAME=sugar-build-`date +%Y%m%d-%H%M%S.tar.xz` && \ - echo "Creating $$SNAPSHOT_FILENAME" && \ - ln -s `pwd` $$TMP_DIR/sugar-build && \ - cd $$TMP_DIR && \ - tar chJ --exclude=source \ - --exclude=build \ - --exclude=logs \ - --exclude=.git* \ - -f $$TMP_DIR/$$SNAPSHOT_FILENAME sugar-build && \ - echo "Uploading" && \ - scp $$SNAPSHOT_FILENAME $(SNAPSHOT_DEST) && \ - rm -f $$SNAPSHOT_FILENAME && \ + echo "Creating snapshot" && \ + SNAPSHOT_PATH=`commands/helpers/build-snapshot $$TMP_DIR` && \ + echo "Uploading snapshot" && \ + scp $$SNAPSHOT_PATH $(SNAPSHOT_DEST) && \ + rm -rf $$TMP_DIR && \ + echo "Notifying about upload completion" && \ ssh $(SNAPSHOT_DEST_HOST) $(SNAPSHOT_DEST_DIR)/upload-completed diff --git a/commands/helpers/build-snapshot b/commands/helpers/build-snapshot new file mode 100755 index 0000000..339cebf --- /dev/null +++ b/commands/helpers/build-snapshot @@ -0,0 +1,68 @@ +#!/bin/sh + +commandsdir=`dirname "$0"` +basedir=`dirname "$commandsdir"` + +if [ "$#" -eq 0 ]; then + echo "build-snapshot [destination directory]" + exit 1 +fi + +destdir=$1 +filename=sugar-build-`date +%Y%m%d-%H%M%S.tar` + +ln -s `pwd` $destdir/sugar-build + +cd $destdir + +tar chf $filename \ + sugar-build/config \ + sugar-build/devbot \ + sugar-build/install \ + sugar-build/commands/helpers/bashrc \ + sugar-build/commands/helpers/find-free-display \ + sugar-build/commands/helpers/list-outputs \ + sugar-build/commands/helpers/ubuntu-tweaks \ + sugar-build/commands/helpers/xinitrc \ + sugar-build/commands/helpers/xephyr-window \ + sugar-build/commands/helpers/get-screen-dpi \ + sugar-build/commands/helpers/run-with-keyring \ + sugar-build/commands/check-system \ + sugar-build/commands/run-command \ + sugar-build/commands/common.py \ + sugar-build/commands/run \ + sugar-build/commands/shell + +rm sugar-build + +mkdir sugar-build + +runsugarscript=sugar-build/run-sugar.sh + +cat > $runsugarscript << "EOF" +#!/bin/sh + +commands/check-system +commands/run +EOF + +chmod +x $runsugarscript + +runshellscript=sugar-build/run-shell.sh + +cat > $runshellscript << "EOF" +#!/bin/sh + +commands/check-system +commands/shell +EOF + +chmod +x $runshellscript + +tar rh -f $filename $runshellscript $runsugarscript + +rm -rf sugar-build + +xz $filename + +echo $filename.xz -- cgit v0.9.1