--- /dev/null
+#!/bin/bash
+
+# Copyright (C) 2006, 2007 Google Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+
+# This is a test script to ease development and testing on test clusters.
+# It should not be used to update production environments.
+
+# Usage: upload node-{1,2,3}
+
+set -e
+
+hosts=
+while [ "$#" -gt 0 ]; do
+ opt="$1"
+ case "$opt" in
+ -h|--help)
+ echo "Usage: $0 hosts..."
+ exit 0
+ ;;
+ -*)
+ echo "Unknown option: $opt" >&2
+ exit 1
+ ;;
+ *)
+ hosts="$hosts $opt"
+ ;;
+ esac
+ shift
+done
+
+set ${hosts}
+
+TXD=`mktemp -d`
+trap 'rm -rf $TXD' EXIT
+
+# install the os as a real tree
+make install DESTDIR="$TXD"
+
+echo ---
+
+( cd "$TXD" && find; )
+
+echo ---
+
+for host; do
+ echo Uploading code to ${host}...
+ rsync -v -rlDc ${TXD}/* root@${host}:/ &
+done
+