summaryrefslogtreecommitdiff
path: root/Tools
diff options
context:
space:
mode:
authorKris Kennaway <kris@FreeBSD.org>2004-09-26 22:09:09 +0000
committerKris Kennaway <kris@FreeBSD.org>2004-09-26 22:09:09 +0000
commit148e0d36afa9745143ba1c5f304fe8a4fb3621d5 (patch)
tree7c6b1bbe6416e96624e3b8cdb9168843a67b2a4f /Tools
parent* Bail out if we can't claim a chroot directory in the client (e.g. if (diff)
Break out the setupnode function of dopackages into a separate script so
that it may be called by hand. Support new portbuild.conf variables client_user = user to connect to on the client (not necessarily root). This user must have write permission to the /var/portbuild tree if disconnected=1 (i.e. we're going to run rsync). rsync_gzip = set to "-z" to enable compression on low-bandwidth disconnected clients. Approved by: portmgr (self)
Notes
Notes: svn path=/head/; revision=118449
Diffstat (limited to 'Tools')
-rwxr-xr-xTools/portbuild/scripts/dosetupnode47
1 files changed, 47 insertions, 0 deletions
diff --git a/Tools/portbuild/scripts/dosetupnode b/Tools/portbuild/scripts/dosetupnode
new file mode 100755
index 000000000000..48d8790777ac
--- /dev/null
+++ b/Tools/portbuild/scripts/dosetupnode
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+# configurable variables
+pb=/var/portbuild
+arch=$1
+branch=$2
+mach=$3
+shift
+
+. ${pb}/${arch}/portbuild.conf
+
+. ${pb}/scripts/buildenv
+
+# usage: setupnode pb arch scripts branch me node md5 tmpdir
+setupnode () {
+ pb=$1
+ arch=$2
+ scripts=$3
+ branch=$4
+ me=$5
+ node=$6
+ md5=$7
+ tmpdir=$8
+
+ echo "setting up of $node started at $(date)"
+
+ # Read in client config and decide if the node is disconnected or not (i.e. mounts via NFS)
+ disconnected=0
+ . ${pb}/${arch}/portbuild.${node}
+
+ scp -p ${scripts}/setupnode ${client_user}@${node}:/tmp
+ ssh -n ${client_user}@${node} sh /tmp/setupnode ${me} ${pb} ${arch} ${branch} ${tmpdir} ${md5} ${disconnected}
+
+ if [ "${disconnected}" = 1 ]; then
+ rsync ${rsync_gzip} -r -l -p --delete ${pb}/scripts ${client_user}@${node}:${pb}/
+ rsync ${rsync_gzip} -r -l -p --delete ${pb}/${arch}/portbuild* ${client_user}@${node}:${pb}/${arch}
+ rsync ${rsync_gzip} -r -l -p --delete ${pb}/${arch}/${branch}/ports ${client_user}@${node}:${pb}/${arch}/${branch}
+ rsync ${rsync_gzip} -r -l -p --delete ${pb}/${arch}/${branch}/src ${client_user}@${node}:${pb}/${arch}/${branch}
+ rsync ${rsync_gzip} -r -l -p --delete ${pb}/${arch}/${branch}/doc ${client_user}@${node}:${pb}/${arch}/${branch}
+ rsync ${rsync_gzip} -r -l -p --delete ${pb}/${arch}/${branch}/tarballs/bindist* ${client_user}@${node}:${pb}/${arch}/${branch}/tarballs
+ fi
+
+ echo "setting up of $node ended at $(date)"
+}
+
+md5=$(/sbin/md5 ${pb}/${arch}/${branch}/tarballs/bindist.tar | awk '{print $4}')
+setupnode ${pb} ${arch} ${pb}/scripts ${branch} $(hostname) ${mach} ${md5} ${scratchdir}