From owner-svn-doc-head@FreeBSD.ORG Fri Feb 15 14:49:57 2013
Return-Path:
Delivered-To: svn-doc-head@freebsd.org
Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115])
by hub.freebsd.org (Postfix) with ESMTP id 747CC982;
Fri, 15 Feb 2013 14:49:57 +0000 (UTC)
(envelope-from linimon@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 58665120;
Fri, 15 Feb 2013 14:49:57 +0000 (UTC)
Received: from svn.freebsd.org ([127.0.1.70])
by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r1FEnvsT083357;
Fri, 15 Feb 2013 14:49:57 GMT (envelope-from linimon@svn.freebsd.org)
Received: (from linimon@localhost)
by svn.freebsd.org (8.14.5/8.14.5/Submit) id r1FEnvob083356;
Fri, 15 Feb 2013 14:49:57 GMT (envelope-from linimon@svn.freebsd.org)
Message-Id: <201302151449.r1FEnvob083356@svn.freebsd.org>
From: Mark Linimon
Date: Fri, 15 Feb 2013 14:49:57 +0000 (UTC)
To: doc-committers@freebsd.org, svn-doc-all@freebsd.org,
svn-doc-head@freebsd.org
Subject: svn commit: r40973 - head/en_US.ISO8859-1/articles/portbuild
X-SVN-Group: doc-head
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-doc-head@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for the doc tree for head
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Fri, 15 Feb 2013 14:49:57 -0000
Author: linimon
Date: Fri Feb 15 14:49:56 2013
New Revision: 40973
URL: http://svnweb.freebsd.org/changeset/doc/40973
Log:
Start scrubbing (or flagging) all obsolete information.
While here, continue moving from using /var/portbuild to /a/portbuild
for server-based instructions, and be more pedantic about labeling
things server-side vs. client-side.
Modified:
head/en_US.ISO8859-1/articles/portbuild/article.xml
Modified: head/en_US.ISO8859-1/articles/portbuild/article.xml
==============================================================================
--- head/en_US.ISO8859-1/articles/portbuild/article.xml Fri Feb 15 10:23:34 2013 (r40972)
+++ head/en_US.ISO8859-1/articles/portbuild/article.xml Fri Feb 15 14:49:56 2013 (r40973)
@@ -77,7 +77,7 @@
- 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.
@@ -113,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
@@ -149,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
@@ -175,11 +163,11 @@
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.
@@ -204,29 +192,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; /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; /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
@@ -237,6 +227,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.
+
@@ -1018,12 +1018,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.
@@ -1047,6 +1042,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
@@ -1124,7 +1129,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
@@ -1152,7 +1157,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.
@@ -1160,6 +1165,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.
+
+
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
@@ -1210,12 +1220,6 @@ 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
@@ -1300,9 +1304,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 8 -noportsvcs -nobuild -novcs -nofinish
The builds must be performed from the
@@ -1317,7 +1321,7 @@ umount: Cleanup of /x/tmp/8-exp/chroot/5
<#> 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
@@ -1350,17 +1354,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.
@@ -1440,7 +1442,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.
@@ -1481,8 +1484,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:
@@ -1497,9 +1501,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
@@ -1916,7 +1925,7 @@ portbuild ALL=(ALL) NOPASSWD: ALL
Create
- /var/portbuild/${arch}/clients/bindist-${hostname}.tar.
+ /a/portbuild/${arch}/clients/bindist-${hostname}.tar.
@@ -1955,16 +1964,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:
@@ -2030,7 +2039,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.
@@ -2075,7 +2084,7 @@ ssh_cmd="/usr/local/bin/ssh"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.