Minor updates to reflect the last year of changes.
This commit is contained in:
parent
16c41b4af3
commit
6e8d721dc4
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=34448
1 changed files with 36 additions and 27 deletions
|
@ -70,7 +70,8 @@
|
|||
<listitem><para>right after release time, for the
|
||||
<literal>-STABLE</literal> branches</para></listitem>
|
||||
|
||||
<listitem><para>every month or so, for <literal>-CURRENT</literal>
|
||||
<listitem><para>periodically to test changes to
|
||||
<literal>-CURRENT</literal>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>for experimental builds</para></listitem>
|
||||
|
@ -80,16 +81,15 @@
|
|||
<sect1 id="management">
|
||||
<title>Build Client Management</title>
|
||||
|
||||
<para>The &i386; clients currently
|
||||
netboot from <hostid>pointyhat</hostid>; the other clients
|
||||
are self-hosted. In all cases they set themselves
|
||||
<para>The &i386; clients co-located with <hostid>pointyhat</hostid>
|
||||
netboot from it (<replaceable>connected</replaceable> nodes); all
|
||||
other clients (<replaceable>disconnected</replaceable> nodes)
|
||||
are either self-hosted or netboot from some other
|
||||
<literal>pxe</literal> host.
|
||||
In all cases they set themselves
|
||||
up at boot-time to prepare to build packages.</para>
|
||||
|
||||
<para>Although connected nodes are supported,
|
||||
<replaceable>disconnected</replaceable> cluster node support has
|
||||
been added. A disconnected node is
|
||||
one that does not mount the cluster master via NFS. It could be
|
||||
a remote node, for example. The cluster master rsync's the
|
||||
<para>The cluster master <command>rsync</command>s the
|
||||
interesting data (ports and src trees, bindist tarballs,
|
||||
scripts, etc.) to disconnected nodes during the node-setup
|
||||
phase. Then, the disconnected portbuild directory is
|
||||
|
@ -141,6 +141,7 @@
|
|||
|
||||
<screen>/var/portbuild&prompt.root; <userinput>scripts/mkbindist <replaceable>${arch}</replaceable> <replaceable>${branch}</replaceable> <replaceable>${buildid}</replaceable></userinput></screen>
|
||||
|
||||
<!-- XXX MCL still true? -->
|
||||
<para>The per-machine tarballs are located in
|
||||
<filename><replaceable>${arch}</replaceable>/clients</filename>.</para>
|
||||
|
||||
|
@ -454,6 +455,9 @@
|
|||
|
||||
<para><command>dopackages.7 sparc64 -finish</command></para>
|
||||
</example>
|
||||
|
||||
<para>Hint: it us usually best to run the <command>dopackages</command>
|
||||
command inside of <command>screen(1)</command>.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="build-command">
|
||||
|
@ -584,6 +588,7 @@
|
|||
<para>[+] If any of these steps fail, the build will stop
|
||||
cold in its tracks.</para>
|
||||
|
||||
<!-- XXX MCL make.* is obsolete? -->
|
||||
<para>[++] Status of these steps can be found in
|
||||
<filename><replaceable>${arch}</replaceable>/<replaceable>${branch}</replaceable>/make.[0|1]</filename>,
|
||||
where <filename>make.0</filename> is the log file used by
|
||||
|
@ -677,7 +682,8 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
<filename>dopackages</filename> will simply exit.
|
||||
</para>
|
||||
|
||||
<para>If you have to do a <command>cvs update</command> before
|
||||
<!-- XXX MCL the Makefile part is obsolete? -->
|
||||
<para>If you have to do a ports tree update before
|
||||
restarting, you may have to rebuild either <filename>duds</filename>,
|
||||
<filename>INDEX</filename>, or both. If you are doing the latter
|
||||
manually, you will also have to rebuild
|
||||
|
@ -840,6 +846,7 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
<screen>&prompt.user; <userinput>cd <replaceable>${arch}</replaceable>/<replaceable>${branch}</replaceable></userinput>
|
||||
&prompt.user; <userinput>find distfiles > distfiles-<replaceable>${release}</replaceable></userinput></screen>
|
||||
|
||||
<!-- XXX MCL apparently obsolete -->
|
||||
<para>This inventory file typically lives in
|
||||
<filename>i386/<replaceable>${branch}</replaceable></filename>
|
||||
on the cluster master.</para>
|
||||
|
@ -902,7 +909,7 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para><literal>packages-6.3-release</literal></para>
|
||||
<para><literal>packages-6.4-release</literal></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
@ -910,7 +917,7 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><literal>packages-7.0-release</literal></para>
|
||||
<para><literal>packages-7.2-release</literal></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
|
@ -991,9 +998,9 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
|
||||
<para>Experimental patches builds are run from time to time to
|
||||
new features or bugfixes to the ports infrastructure (i.e.
|
||||
<literal>bsd.port.mk</literal>), or to test large sweeping
|
||||
<filename>bsd.port.mk</filename>), or to test large sweeping
|
||||
upgrades. The current experimental patches branch is
|
||||
<literal>7-exp</literal> on the &i386;
|
||||
<literal>7-exp</literal> on the amd64
|
||||
architecture.</para>
|
||||
|
||||
<para>In general, an experimental patches build is run the same
|
||||
|
@ -1027,33 +1034,35 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
<para>In order to have a good control case with which to compare
|
||||
failures, you should first do a package build of the branch on
|
||||
which the experimental patches branch is based for the &i386;
|
||||
architecture (currently this is <literal>6</literal>). Then, when
|
||||
architecture (currently this is <literal>7</literal>). Then, when
|
||||
preparing for the experimental patches build, checkout a ports
|
||||
tree and a src tree with the same date as was used for the control
|
||||
build. This will ensure an apples-to-apples comparison
|
||||
later.</para>
|
||||
|
||||
<!-- XXX MCL currently there is only one build cluster
|
||||
<note><para>One build cluster can do the control build while the other
|
||||
does the experimental patches build. This can be a great
|
||||
time-saver.</para></note>
|
||||
-->
|
||||
|
||||
<para>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 <literal>6</literal>
|
||||
branch is the control branch, and the <literal>6-exp</literal>
|
||||
commands to facilitate this (this assumes the <literal>7</literal>
|
||||
branch is the control branch, and the <literal>7-exp</literal>
|
||||
branch is the experimental patches branch):</para>
|
||||
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/6-exp/errors</userinput>
|
||||
&prompt.user; <userinput>find . -name \*.log\* | sort > /tmp/6-exp-errs</userinput>
|
||||
&prompt.user; <userinput>cd /var/portbuild/i386/6/errors</userinput>
|
||||
&prompt.user; <userinput>find . -name \*.log\* | sort > /tmp/6-errs</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/7-exp/errors</userinput>
|
||||
&prompt.user; <userinput>find . -name \*.log\* | sort > /tmp/7-exp-errs</userinput>
|
||||
&prompt.user; <userinput>cd /var/portbuild/i386/7/errors</userinput>
|
||||
&prompt.user; <userinput>find . -name \*.log\* | sort > /tmp/7-errs</userinput></screen>
|
||||
|
||||
<note><para>If it has been a long time since one of the builds
|
||||
finished, the logs may have been automatically compressed with
|
||||
bzip2. In that case, you must use <literal>sort | sed
|
||||
's,\.bz2,,g'</literal> instead.</para></note>
|
||||
|
||||
<screen>&prompt.user; <userinput>comm -3 /tmp/6-errs /tmp/6-exp-errs | less</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>comm -3 /tmp/7-errs /tmp/7-exp-errs | less</userinput></screen>
|
||||
|
||||
<para>This last command will produce a two-column report. The
|
||||
first column is ports that failed on the control build but not in
|
||||
|
@ -1108,7 +1117,7 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
To differentiate between [1] and [2] above, you can do a rebuild
|
||||
of the affected packages under the control branch:</para>
|
||||
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/6/ports</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/7/ports</userinput></screen>
|
||||
|
||||
<note><para>Be sure to <literal>cvs update</literal> this tree to the same date as
|
||||
the experimental patches tree.</para></note>
|
||||
|
@ -1116,14 +1125,14 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
<para>The following command will set up the control branch for
|
||||
the partial build:</para>
|
||||
|
||||
<screen>&prompt.user; <userinput>/var/portbuild/scripts/dopackages.6 -noportscvs -nobuild -nocvs -nofinish</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>/var/portbuild/scripts/dopackages.7 -noportscvs -nobuild -nocvs -nofinish</userinput></screen>
|
||||
|
||||
<para>The builds must be performed from the
|
||||
<literal>packages/All</literal> directory. This directory should
|
||||
initially be empty except for the Makefile symlink. If this
|
||||
symlink does not exist, it must be created:</para>
|
||||
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/6/packages/All</userinput>
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/7/packages/All</userinput>
|
||||
&prompt.user; <userinput>ln -sf ../../Makefile .</userinput>
|
||||
&prompt.user; <userinput>make -k -j<#> <list of packages to build></userinput></screen>
|
||||
|
||||
|
@ -1812,7 +1821,7 @@ LifeTime(hours) LBA_of_first_error
|
|||
remapping).</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>When a disk has failed, please inform &a.kris; so he can try to get it
|
||||
replaced.</para>
|
||||
<para>When a disk has failed, please inform the cluster administrators
|
||||
so we can try to get it replaced.</para>
|
||||
</sect1>
|
||||
</article>
|
||||
|
|
Loading…
Reference in a new issue