bf52af1377
Without this, the caches end up in the wrong place (one level of directories gets removed)
56 lines
1.1 KiB
Bash
Executable File
56 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
. gconfig
|
|
|
|
TUSER=${DISTRO:-ubuntu}
|
|
QUIET_FLAG="-vP"
|
|
|
|
usage() {
|
|
echo "Usage: ${0##*/} [OPTION]... <command>"
|
|
echo "Run command on build target."
|
|
echo
|
|
cat << EOF
|
|
--help display this help and exit
|
|
--user=U run as U instead of ubuntu
|
|
EOF
|
|
}
|
|
|
|
if [ $# != 0 ] ; then
|
|
while true ; do
|
|
case "$1" in
|
|
--help|-h)
|
|
usage
|
|
exit 0
|
|
;;
|
|
--user|-u)
|
|
TUSER="$2"
|
|
shift 2
|
|
;;
|
|
--quiet|-q)
|
|
QUIET_FLAG="-q"
|
|
shift 1
|
|
;;
|
|
--*)
|
|
echo "unrecognized option $1"
|
|
exit 1
|
|
;;
|
|
*)
|
|
break
|
|
;;
|
|
esac
|
|
done
|
|
fi
|
|
|
|
if [ $# = 0 ] ; then
|
|
usage
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$USE_LXC" ]; then
|
|
src="${1%/}" # remove trailing / which triggers special rsync behaviour
|
|
rsync --checksum -a $QUIET_FLAG -e "ssh -oConnectTimeout=30 -oNoHostAuthenticationForLocalhost=yes -i ${GITIAN_BASE:-.}/var/id_rsa -p $VM_SSH_PORT" "$TUSER@localhost:${src}" "$2"
|
|
else
|
|
config-lxc
|
|
sudo $LXC_EXECUTE -n gitian -f var/lxc.config -- sudo -i -u $TUSER tar -C `dirname "$1"` -cf - `basename "$1"` | tar -C "$2" -xf -
|
|
fi
|