Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 Nov 2011 03:05:07 +0000 (UTC)
From:      Mark Linimon <linimon@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r227855 - projects/portbuild/scripts
Message-ID:  <201111230305.pAN357uT021875@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: linimon (doc,ports committer)
Date: Wed Nov 23 03:05:07 2011
New Revision: 227855
URL: http://svn.freebsd.org/changeset/base/227855

Log:
  Allow for the ability of a per-build file make.conf.client.  In use, the
  lines of this file will be *appended* -- not replace -- to the per-host
  make.conf.  The latter deal with overriding default fetching locations.
  (Although in practice they are per-site, not per-host, for historical
  reasons they remain per-host).
  
  This, for example, allows some builds to be run with clang as default,
  while not having to change others.

Modified:
  projects/portbuild/scripts/dosetupnode

Modified: projects/portbuild/scripts/dosetupnode
==============================================================================
--- projects/portbuild/scripts/dosetupnode	Wed Nov 23 02:08:05 2011	(r227854)
+++ projects/portbuild/scripts/dosetupnode	Wed Nov 23 03:05:07 2011	(r227855)
@@ -81,14 +81,15 @@ setup() {
     ${client_setup} pre-copy ${args} || (echo "pre-copy for ${node} failed"; return 1)
 
     if [ "${norsync}" -eq 0 ]; then
-	# client.conf and common.conf can be symlinks outside this dir, so
-	# copy the actual files
+	# conf files (e.g. client.conf and common.conf) can be symlinks outside
+	# this dir, so copy the actual files
 	rsync ${rsync_gzip} -e "${ssh_cmd}" -r -L -p --delete ${pbd}/${arch}/*.conf \
 	    ${client_user}@${node}:${pbd}/${arch}
 	checkerror $? || (echo "copying *.conf to ${node} failed"; return 1)
 
 	# portbuild.* can be symlinks outside this dir, so copy the actual
 	# files
+	# XXX MCL really, only have to do portbuild.conf and portbuild.<nodename>.conf
 	rsync ${rsync_gzip} -e "${ssh_cmd}" -r -L -p --delete ${pbd}/${arch}/portbuild* \
 	    ${client_user}@${node}:${pbd}/${arch}
 	checkerror $? || (echo "copying portbuild* files to ${node} failed"; return 1)
@@ -116,6 +117,14 @@ setup() {
 		echo "No custom portbuild.conf."
 	    fi
 
+	    if [ -f ${builddir}/make.conf.client ]; then
+		rsync ${rsync_gzip} -e "${ssh_cmd}" -r -L -p --delete ${builddir}/make.conf.client \
+		    ${client_user}@${node}:${builddir}/
+		checkerror $? || (echo "Copying custom make.conf.client to ${node} failed"; return 1)
+	    else
+		echo "No custom make.conf.client."
+	    fi
+
 	    rsync ${rsync_gzip} -e "${ssh_cmd}" -r -L -p \
 		${builddir}/ports-${buildid}.tbz \
 		${builddir}/ports-${buildid}.tbz.md5 \
@@ -131,6 +140,7 @@ setup() {
     ${client_setup} post-copy ${args} || (echo "post-copy for ${node} failed"; return 1)
 
     if [ "${queue}" -eq 1 ]; then
+        # XXX MCL NEED TIMEOUT HERE
 	jobs=$(python ${pbc}/qmanager/qclient jobs | grep "${node}" | grep "${arch}/${branch}/${buildid} package" | awk '{print $1}' | tail +1)
 	for j in ${jobs}; do
 	    python ${pbc}/qmanager/qclient release $j



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201111230305.pAN357uT021875>