5205840db8efc5386a2f2c5906aa041283032f19
[ext/instance-debootstrap.git] / devel / upload
1 #!/bin/bash
2
3 # Copyright (C) 2006, 2007 Google Inc.
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 # General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18 # 02110-1301, USA.
19
20 # This is a test script to ease development and testing on test clusters.
21 # It should not be used to update production environments.
22
23 # Usage: upload node-{1,2,3}
24
25 set -e
26
27 hosts=
28 while [ "$#" -gt 0 ]; do
29   opt="$1"
30   case "$opt" in
31     -h|--help)
32       echo "Usage: $0 hosts..."
33       exit 0
34       ;;
35     -*)
36       echo "Unknown option: $opt" >&2
37       exit 1
38     ;;
39     *)
40       hosts="$hosts $opt"
41     ;;
42   esac
43   shift
44 done
45
46 set ${hosts}
47
48 TXD=`mktemp -d`
49 trap 'rm -rf $TXD' EXIT
50
51 # install the os as a real tree
52 make install DESTDIR="$TXD"
53
54 echo ---
55
56 ( cd "$TXD" && find; )
57
58 echo ---
59
60 for host; do
61   echo Uploading code to ${host}...
62   rsync -v -rlDc ${TXD}/* root@${host}:/ &
63 done
64