From 148e0d36afa9745143ba1c5f304fe8a4fb3621d5 Mon Sep 17 00:00:00 2001 From: Kris Kennaway Date: Sun, 26 Sep 2004 22:09:09 +0000 Subject: [PATCH] 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) --- Tools/portbuild/scripts/dosetupnode | 47 +++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 Tools/portbuild/scripts/dosetupnode 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}