From owner-svn-doc-projects@FreeBSD.ORG Sat Feb 16 04:50:42 2013 Return-Path: Delivered-To: svn-doc-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 15EFADFE; Sat, 16 Feb 2013 04:50:42 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DE5AB9CF; Sat, 16 Feb 2013 04:50:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1G4ofTv041730; Sat, 16 Feb 2013 04:50:41 GMT (envelope-from gjb@svn.freebsd.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1G4oeVW041722; Sat, 16 Feb 2013 04:50:40 GMT (envelope-from gjb@svn.freebsd.org) Message-Id: <201302160450.r1G4oeVW041722@svn.freebsd.org> From: Glen Barber Date: Sat, 16 Feb 2013 04:50:40 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-projects@freebsd.org Subject: svn commit: r40977 - in projects/ISBN_1-57176-407-0/en_US.ISO8859-1: articles/committers-guide articles/contributing articles/contributors articles/portbuild books/arch-handbook/boot books/arch-han... X-SVN-Group: doc-projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-projects@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for doc projects trees List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Feb 2013 04:50:42 -0000 Author: gjb Date: Sat Feb 16 04:50:40 2013 New Revision: 40977 URL: http://svnweb.freebsd.org/changeset/doc/40977 Log: MFH: /head/en_US.ISO8859-1:r40693-40976 Approved by: doceng (implicit) Deleted: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/FAQ/ Modified: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/committers-guide/article.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributing/article.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.additional.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.committers.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/portbuild/article.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/boot/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/driverbasics/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/isa/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/jail/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/kobj/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/newbus/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/pccard/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/pci/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/scsi/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/smp/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/sound/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/usb/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/arch-handbook/vm/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/faq/book.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/audit/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/basics/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/boot/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/config/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/desktop/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/disks/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/dtrace/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/filesystems/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/firewalls/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/geom/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/introduction/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/jails/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/kernelconfig/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/l10n/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/linuxemu/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/mac/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/mail/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/mirrors/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/multimedia/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/network-servers/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/ports/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/preface/preface.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/printing/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/security/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/serialcomms/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/vinum/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/books/porters-handbook/book.xml (contents, props changed) projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/Makefile projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/about.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/advocacy/myths.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/applications.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/cgi/man.cgi projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/doc/Makefile projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/donations/donors.xml (contents, props changed) projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/donations/wantlist.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/features.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/internal/doceng.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/internal/internal.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/layout/css/layout.css projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/mailto.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/projects/newbies.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/projects/projects.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/releng/index.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/relnotes.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/security/security.xml projects/ISBN_1-57176-407-0/en_US.ISO8859-1/htdocs/snapshots/index.xml Directory Properties: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/ (props changed) Modified: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/committers-guide/article.xml ============================================================================== --- projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/committers-guide/article.xml Fri Feb 15 22:47:36 2013 (r40976) +++ projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/committers-guide/article.xml Sat Feb 16 04:50:40 2013 (r40977) @@ -26,6 +26,7 @@ 2010 2011 2012 + 2013 The FreeBSD Documentation Project @@ -212,7 +213,7 @@ doc doceng@ - doc/, www/, src/ documentation + doc/, src/ documentation @@ -1720,6 +1721,13 @@ U stable/9/share/man/man4/netmap.4 &prompt.user; svn merge -r179454:179453 svn+ssh://svn.freebsd.org/base/ROADMAP.txt + + It is important to ensure that the mergeinfo + is correct when reverting a file in order to permit + svn mergeinfo --eligible to work as + expected. + + Reverting the deletion of a file is slightly different. Copying the version of the file that predates the deletion is required. For example, to restore a file that was @@ -4151,24 +4159,6 @@ bak/packages packages from last complet there are at least some perks: - - - Direct access to cvsup-master - - - As a committer, you may apply to &a.kuriyama; for direct access - to cvsup-master.FreeBSD.org, - providing the public key output from cvpasswd - yourusername@FreeBSD.org - freefall.FreeBSD.org. Please note: you must - specify freefall.FreeBSD.org on the - cvpasswd command line even though the - actual server is cvsup-master. Access to - cvsup-master should not be overused as it is - a busy machine. - - - Free 4-CD and DVD Sets Modified: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributing/article.xml ============================================================================== --- projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributing/article.xml Fri Feb 15 22:47:36 2013 (r40976) +++ projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributing/article.xml Sat Feb 16 04:50:40 2013 (r40977) @@ -518,9 +518,9 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE PO Donations may be sent in check form to:
The FreeBSD Foundation - 7321 Brockway Dr. + P.O. Box 20247, Boulder, - CO 80303 + CO 80308 USA
Modified: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.additional.xml ============================================================================== --- projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.additional.xml Fri Feb 15 22:47:36 2013 (r40976) +++ projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.additional.xml Sat Feb 16 04:50:40 2013 (r40977) @@ -3366,7 +3366,7 @@ Gary Hayers - gary@hayers.net + gary@hayers.org @@ -5133,6 +5133,11 @@ + Joseph Mingrone + jrm@ftfl.ca + + + Joseph Scott joseph@randomnetworks.com @@ -5312,11 +5317,6 @@ - Kubilay Kocak - koobs.freebsd@gmail.com - - - KUNISHIMA Takeo kunishi@c.oka-pu.ac.jp @@ -6476,6 +6476,11 @@ + Matt Stofko + matt@mjslabs.com + + + Matt Thomas matt@3am-software.com @@ -6830,6 +6835,11 @@ + Michael Sanders + mike@topcat.hypermart.net + + + Michael Sardo jaeger16@yahoo.com @@ -8375,11 +8385,6 @@ - Po-Chien Lin - linpc@cs.nctu.edu.tw - - - Pomegranate daver@flag.blackened.net @@ -8787,6 +8792,11 @@ + Dr. Rolf Jansen + cyclaero@gmail.com + + + Roman Neuhauser neuhauser@chello.cz Modified: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.committers.xml ============================================================================== --- projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.committers.xml Fri Feb 15 22:47:36 2013 (r40976) +++ projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/contributors/contrib.committers.xml Sat Feb 16 04:50:40 2013 (r40977) @@ -700,6 +700,10 @@ + &a.koobs; + + + &a.jkois; @@ -784,6 +788,10 @@ + &a.dru; + + + &a.jlh; @@ -812,6 +820,10 @@ + &a.achim; + + + &a.truckman; @@ -832,6 +844,10 @@ + &a.pclin; + + + &a.yzlin; Modified: projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/portbuild/article.xml ============================================================================== --- projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/portbuild/article.xml Fri Feb 15 22:47:36 2013 (r40976) +++ projects/ISBN_1-57176-407-0/en_US.ISO8859-1/articles/portbuild/article.xml Sat Feb 16 04:50:40 2013 (r40977) @@ -63,7 +63,7 @@ The codebase Most of the package building magic occurs under the - /var/portbuild directory. Unless + /a/portbuild directory. Unless otherwise specified, all paths will be relative to this location. ${arch} will be used to specify one of the package architectures @@ -77,15 +77,16 @@ - Packages are no longer built for branches 4, 5, or 6, nor + FreeBSD no longer builds packages for branches 4, 5, or 6, nor for the alpha architecture. - The scripts that control all of this live in - /var/portbuild/scripts/. + The scripts that control all of this live in either + /a/portbuild/scripts/ or. + /a/portbuild/admin/scripts/. These are the checked-out copies from the Subversion repository at - - base/projects/portbuild/scripts/ + + base/projects/portbuild/ . Typically, incremental builds are done that use previous @@ -112,7 +113,7 @@ - Notes on the codebase + Historical notes on the codebase Until mid-2010, the scripts were completely specific to pointyhat.FreeBSD.org as the head (dispatch) node. During @@ -148,18 +149,6 @@ - This document was originally written before these changes - were made. Where things such as script invocations have changed, - they were denoted as new codebase: as opposed - to old codebase:. - - - Up until November 2012, pointyhat had still - been running the old codebase. That installation has now been - permanently offlined. Therefore, all the instructions having - to do with the old codebase have been removed. - - Also during this process, the codebase was migrated to the @@ -169,16 +158,61 @@ found in CVS. + + + Notes on privilege separation + + As of January 2013, a rewrite is in progress to further separate + privileges. The following concepts are introduced: + + + + Server-side user portbuild assumes all + responsiblity for operations involving builds and communicating + with the clients. This user no longer has access to + sudo. + + + + Server-side user srcbuild is created + and given responsiblity for operations involving both VCS + operations and anything involving src builds for the clients. + This user does not have access to + sudo. + + + + The server-side + ports-arch + users go away. + + + + None of the above server-side users have + ssh keys. Individual + portmgr will accomplish all those + tasks using ksu. (This is + still work-in-progress.) + + + + The only client-side user is also named + portbuild and still has access to + sudo for the purpose of managing + jails. + + + Build Client Management - The &i386; clients co-located with pointyhat - netboot from it (connected nodes); all - other clients (disconnected nodes) - are either self-hosted or netboot from some other - pxe host. + You may set up clients to either netboot from the master + (connected nodes) + or have them either self-hosted or netboot from some other + pxe host + (disconnected nodes). In all cases they set themselves up at boot-time to prepare to build packages. @@ -189,7 +223,7 @@ nullfs-mounted for jail builds. The - ports-${arch} + portbuild user can &man.ssh.1; to the client nodes to monitor them. Use sudo and check the portbuild.hostname.conf @@ -203,29 +237,31 @@ Jail Build Environment Setup - Package builds are performed in a + Package builds are performed by the clients in a jail populated by the portbuild script using the ${arch}/${branch}/builds/${buildid}/bindist.tar file. - The makeworld command builds a world from the + On the server, use the + makeworld command to build a world from the ${arch}/${branch}/builds/${buildid}/src/ - tree and installs it into + tree and install it into ${arch}/${branch}/builds/${buildid}/bindist.tar. The tree will be updated first unless -novcs is - specified. It should be run as root: + specified. - &prompt.root; /var/portbuild/scripts/makeworld ${arch} ${branch} ${buildid} [-novcs] + &prompt.root; /a/portbuild/admin/scripts/makeworld ${arch} ${branch} ${buildid} [-novcs] - The bindist.tar tarball is created from the + Similiarly on the server, the + bindist.tar tarball is created from the previously installed world by the mkbindist - script. It should be also be run as root: + script. - &prompt.root; /var/portbuild/scripts/mkbindist ${arch} ${branch} ${buildid} + &prompt.root; /a/portbuild/admin/scripts/mkbindist ${arch} ${branch} ${buildid} - The per-machine tarballs are located in + The per-machine tarballs are located on the server in ${arch}/clients. The bindist.tar file is extracted @@ -236,6 +272,16 @@ For both commands above, if ${buildid} is latest, it may be omitted. + + + Currently the above two scripts must be run as + root; otherwise, the install scripts + lack sufficient permissions. This is undesirable for + security reasons. Work is in progress in -HEAD to allow + users to do installations; once that is committed, the + intention is to use that and run these two commands as + srcbuild. + @@ -548,7 +594,7 @@ PKG_BIN=/usr/local/sbin/pkg Make sure the ${arch} build - is run as the ports-${arch} user + is run as the portbuild user or it will complain loudly. @@ -785,7 +831,7 @@ PKG_BIN=/usr/local/sbin/pkgTo free up resources, you will need to clean up client machines by running build cleanup command. For example: - &prompt.user; /var/portbuild/scripts/build cleanup i386 8-exp 20080714120411 -full + &prompt.user; /a/portbuild/scripts/build cleanup i386 8-exp 20080714120411 -full If you forget to do this, then the old build jails will not be cleaned up for 24 hours, and no @@ -800,6 +846,11 @@ PKG_BIN=/usr/local/sbin/pkgloads thinks are in use, you are in trouble. + + The following notes about mounting only apply to + connected nodes. + + You may have problem with the umount commands hanging. If so, you are going to have to use the allgohans script to run an &man.ssh.1; @@ -829,6 +880,11 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 You may also see messages about procfs. + + The above is the end of the notes that apply only to + connected nodes. + + After you have done all the above, remove the ${arch}/lock file before trying to restart the build. If you do not, @@ -875,7 +931,7 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 scripts/stats ${branch} command shows the number of packages already built. - Running cat /var/portbuild/*/loads/* + Running cat /a/portbuild/*/loads/* shows the client loads and number of concurrent builds in progress. The files that have been recently updated are the clients that are online; the others are the offline clients. @@ -912,7 +968,7 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 it if not. Keep an eye on &man.df.1; output. If the - /var/portbuild file system becomes full + /a/portbuild file system becomes full then Bad Things happen. The status of all current builds is generated periodically @@ -1017,12 +1073,7 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 &prompt.user; cd ${arch}/${branch} &prompt.user; find distfiles > distfiles-${release} - - This inventory file typically lives in - i386/${branch} - on the cluster master. - - This is useful to aid in periodically cleaning out + You should use that output to periodically clean out the distfiles from ftp-master. When space gets tight, distfiles from recent releases can be kept while others can be thrown away. @@ -1046,6 +1097,16 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 Uploading Packages + + For FreeBSD.org as of 2013, the instructions + about uploading to ftp-master are obsolete. + In the future, ftp-master will pull + from pointyhat, using a mechanism yet + to be implemented. However, the instructions about + RESTRICTED and NO_CDROM + must still be carefully followed. + + Once a build has completed, packages and/or distfiles can be transferred to ftp-master for propagation to the FTP mirror network. If the build was @@ -1123,7 +1184,7 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 a new release), copy packages to the staging area on ftp-master with something like the following: - &prompt.root; cd /var/portbuild/${arch}/${branch} + &prompt.root; cd /a/portbuild/${arch}/${branch} &prompt.root; tar cfv - packages/ | ssh portmgr@ftp-master tar xfC - w/ports/${arch}/tmp/${subdir} Then log into ftp-master, verify that @@ -1151,7 +1212,7 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 Distfiles should be transferred with the cpdistfiles script: - &prompt.root; /var/portbuild/scripts/cpdistfiles ${arch} ${branch} ${buildid} [-yesreally] | tee log2 + &prompt.root; /a/portbuild/scripts/cpdistfiles ${arch} ${branch} ${buildid} [-yesreally] | tee log2 Doing it by hand is deprecated. @@ -1159,6 +1220,11 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 Experimental Patches Builds + + Most of the information in this section is obsolete + as of 2013 and needs to be rewritten. + + Experimental patches builds are run from time to time to new features or bugfixes to the ports infrastructure (i.e. bsd.port.mk), or to test large sweeping @@ -1209,21 +1275,15 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 build. This will ensure an apples-to-apples comparison later. - - Once the build finishes, compare the control build failures to those of the experimental patches build. Use the following commands to facilitate this (this assumes the 8 branch is the control branch, and the 8-exp branch is the experimental patches branch): - &prompt.user; cd /var/portbuild/i386/8-exp/errors + &prompt.user; cd /a/portbuild/i386/8-exp/errors &prompt.user; find . -name \*.log\* | sort > /tmp/8-exp-errs -&prompt.user; cd /var/portbuild/i386/8/errors +&prompt.user; cd /a/portbuild/i386/8/errors &prompt.user; find . -name \*.log\* | sort > /tmp/8-errs @@ -1286,7 +1346,7 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 rebuild of the affected packages under the control branch: - &prompt.user; cd /var/portbuild/i386/8/ports + &prompt.user; cd /a/portbuild/i386/8/ports The following example is obsolete @@ -1299,9 +1359,9 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 The following command will set up the control branch for - the partial build (old codebase): + the partial build: - &prompt.user; /var/portbuild/scripts/dopackages.8 -noportsvcs -nobuild -novcs -nofinish + &prompt.user; /a/portbuild/scripts/dopackages.wrapper i386 8 -noportsvcs -nobuild -novcs -nofinish The builds must be performed from the @@ -1309,14 +1369,14 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 initially be empty except for the Makefile symlink. If this symlink does not exist, it must be created: - &prompt.user; cd /var/portbuild/i386/8/packages/All + &prompt.user; cd /a/portbuild/i386/8/packages/All &prompt.user; ln -sf ../../Makefile . &prompt.user; make -k -j<#> <list of packages to build> <#> is the concurrency of the build to attempt. It is usually the sum of the weights listed in - /var/portbuild/i386/mlist unless you have a + /a/portbuild/i386/mlist unless you have a reason to run a heavier or lighter build. The list of packages to build should be a list of package @@ -1349,17 +1409,15 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 Before following these steps, please coordinate with portmgr. - - Due to some generous donations, portmgr is - no longer looking for the loan of &i386; or amd64 - systems. However, we are still interested in borrowing tier-2 - systems. - - Node requirements - portmgr is still working on characterizing + + This section is only of interest when considering + tier-2 architectures. + + + Here are the requirement for what a node needs to be generally useful. @@ -1439,7 +1497,8 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 /usr2/.) The filename chroot is a - historical remnant. + historical remnant. The chroot + command is no longer used. @@ -1480,8 +1539,9 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5 Generate a kernel config file. Include - GENERIC (or, if you are using more than - 3.5G on &i386;, PAE). + GENERIC (or, if on &i386, and + you are using more than + 3.5G, PAE). Required options: @@ -1496,9 +1556,14 @@ options SHMMAXPGS=65536 options SEMMNI=40 options SEMMNS=240 options SEMUME=40 -options SEMMNU=120 +options SEMMNU=120 + + If you are interested in debugging general + problems, you may wish to use the following. + However, for unattended operations, it is best + to leave it out: -options ALT_BREAK_TO_DEBUGGER + options ALT_BREAK_TO_DEBUGGER For PAE, it is not currently possible to load modules. Therefore, if you are running an architecture @@ -1553,11 +1618,11 @@ options NFSSERVER Create a - ports-${arch} + portbuild user and group. It can have the '*' password. Create - /home/ports-${arch}/.ssh/ + /home/portbuild/.ssh/ and populate authorized_keys. @@ -1836,8 +1901,7 @@ touch /tmp/.boot_finishedusr/local/etc/sudoers/sudoers.d/portbuild: # local changes for package building -%wheel ALL=(ALL) ALL -ports-${arch} ALL=(ALL) NOPASSWD: ALL +portbuild ALL=(ALL) NOPASSWD: ALL @@ -1858,9 +1922,9 @@ ports-${arch} As root: &prompt.root; mkdir portbuild -&prompt.root; chown ports-${arch}:ports-${arch} portbuild +&prompt.root; chown portbuild:portbuild portbuild &prompt.root; mkdir pkgbuild -&prompt.root; chown ports-${arch}:ports-${arch} pkgbuild +&prompt.root; chown portbuild:portbuild pkgbuild &prompt.root; mkdir squid &prompt.root; mkdir squid/cache &prompt.root; mkdir squid/logs @@ -1894,7 +1958,7 @@ ports-${arch} Configuration on the server These steps need to be taken by a portmgr - acting as ports-${arch} + acting as portbuild on the server. @@ -1902,13 +1966,13 @@ ports-${arch} If any of the default TCP ports is not available (see above), you will need to create an ssh tunnel for them and include its invocation command in - ports-${arch}'s + portbuild's crontab. Unless you can use the defaults, add an entry to - /home/ports-${arch}/.ssh/config + /home/portbuild/.ssh/config to specify the public IP address, TCP port for ssh, username, and any other necessary information. @@ -1916,7 +1980,7 @@ ports-${arch} Create - /var/portbuild/${arch}/clients/bindist-${hostname}.tar. + /a/portbuild/${arch}/clients/bindist-${hostname}.tar. @@ -1955,16 +2019,16 @@ MASTER_SITE_OVERRIDE= \ Hint: you will need one of these for each machine; however, if you have multiple machines at one site, you should create a site-specific one (e.g., in - /var/portbuild/conf/clients/) + /a/portbuild/conf/clients/) and symlink to it. Create -/var/portbuild/${arch}/portbuild-${hostname} +/a/portbuild/${arch}/portbuild-${hostname} using one of the existing ones as a guide. This file contains overrides to -/var/portbuild/${arch}/portbuild.conf. +/a/portbuild/${arch}/portbuild.conf. Suggested values: @@ -1972,7 +2036,7 @@ MASTER_SITE_OVERRIDE= \ http_proxy="http://localhost:3128/" squid_dir=/usr2/squid scratchdir=/usr2/pkgbuild -client_user=ports-${arch} +client_user=portbuild sudo_cmd="sudo -H" rsync_gzip=-z @@ -2014,7 +2078,7 @@ ssh_cmd="/usr/local/bin/ssh"Enabling the node These steps need to be taken by a portmgr - acting as ports-arch: + acting as portbuild: @@ -2030,7 +2094,7 @@ ssh_cmd="/usr/local/bin/ssh" Populate the client's copy of /var/portbuild/scripts/ by something like - /var/portbuild/scripts/dosetupnode arch major latest hostname. + /a/portbuild/scripts/dosetupnode arch major latest hostname. Verify that you now have files in that directory. @@ -2068,14 +2132,14 @@ ssh_cmd="/usr/local/bin/ssh" Finally, again as portmgr - acting as ports-arch: + acting as portbuild: Once you are sure that the client is working, tell pollmachine about it by adding it to - /var/portbuild/${arch}/mlist. + /a/portbuild/${arch}/mlist. @@ -2091,10 +2155,15 @@ ssh_cmd="/usr/local/bin/ssh"HEAD. + + As + srcbuild: + + - Edit /var/portbuild/conf/server.conf + Edit /a/portbuild/conf/admin/admin.conf with the following changes: @@ -2119,7 +2188,7 @@ ssh_cmd="/usr/local/bin/ssh" - Run /var/portbuild/updatesnap manually. + Run /a/portbuild/admin/scripts/updatesnap manually. @@ -2127,24 +2196,21 @@ ssh_cmd="/usr/local/bin/ssh" Steps necessary after <application>qmanager</application> is started - - Again, as - ports-arch: - - For each branch that will be supported, do the following: - Kick-start the build for the branch with: + As portbuild, + kick-start the build for the branch with: build create arch branch - Create + As srcbuild, + create bindist.tar. @@ -2161,7 +2227,7 @@ ssh_cmd="/usr/local/bin/ssh" - Edit /var/portbuild/conf/server.conf + Edit /a/portbuild/admin/conf/admin.conf with the following changes: @@ -2188,7 +2254,7 @@ zfs destroy -r a/snap/src-o You will probably find that the following files and - symlinks in /var/portbuild/errorlogs/ + symlinks in /a/portbuild/errorlogs/ can be removed: @@ -2233,7 +2299,7 @@ zfs destroy -r a/snap/src-o - Edit /var/portbuild/conf/server.conf + Edit /a/portbuild/admin/conf/admin.conf with the following changes: @@ -2248,7 +2314,7 @@ zfs destroy -r a/snap/src-o - Run /var/portbuild/updatesnap manually. + Run /a/portbuild/admin/scripts/updatesnap manually. @@ -2272,49 +2338,24 @@ zfs destroy -r a/snap/src-o Steps necessary before <application>qmanager</application> is started - The initial steps need to be done using - sudo. + The next steps are most easily done as user + portbuild. - - - Create a new - ports-arch - user and group. - - - - mkdir /var/portbuild/arch - - - - Create a new zfs filesystem: - - &prompt.root; zfs create -o mountpoint=/a/portbuild/arch a/portbuild/arch - - - - &prompt.root; chown ports-arch:portbuild /var/portbuild/arch; -&prompt.root; chmod 775 /var/portbuild/arch; -&prompt.root; cd /var/portbuild/arch - - - - Create the .ssh directory. - - - - The next steps are most easily done as user - ports-arch. + The following assumes you have already run + mkportbuild. - Create an archive directory for buildlogs and errorlogs - under archive/. + As the portbuild user, run + + &prompt.user; /a/portbuild/admin/tools/addarch arch + + For each branch that will be supported, do the following: @@ -2358,8 +2399,10 @@ zfs destroy -r a/snap/src-o - Create a fresh portbuild.conf file - from one of the ones for another architecture. + Edit portbuild.conf + from one of the ones for another architecture. + addarch will have created a default + one for you. @@ -2369,23 +2412,13 @@ zfs destroy -r a/snap/src-o - &prompt.root; cd .ssh && ssh-keygen - - - - If desired, - edit the .ssh/config file for - convenience in using ssh. - - - If you need to create any tunnels: Make a private configuration directory: - &prompt.root; mkdir /var/portbuild/conf/arch + &prompt.root; mkdir /a/portbuild/conf/arch @@ -2397,30 +2430,26 @@ zfs destroy -r a/snap/src-o - Once again using sudo: + As srcbuild: Add arch to SUPPORTED_ARCHS in - /var/portbuild/conf/server.conf. + /a/portbuild/admin/conf/admin.conf. Add the arch directory to - /var/portbuild/scripts/zbackup and - /var/portbuild/scripts/zexpire. + /a/portbuild/admin/scripts/zbackup. + (This is a hack and should go away.) - - One last time using sudo: - - - Add an appropriate arch entry for - /var/portbuild/scripts/dologs to the root + Enable the appropriate arch entry for + /a/portbuild/scripts/dologs to the portbuild crontab. (This is a hack and should go away.) *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***