Start a long-overdue overhaul. Reflect the coming de-orbit burn of 6,
and the move to 8 as the new -stable. Document the new 'build create' command. Update options for kernel config for package build nodes, including pointing out which options are mandatory.
This commit is contained in:
parent
809c8cce40
commit
4099f35796
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=34894
1 changed files with 44 additions and 33 deletions
|
@ -47,14 +47,14 @@
|
|||
otherwise specified, all paths will be relative to
|
||||
this location. <replaceable>${arch}</replaceable> will
|
||||
be used to specify one of the package architectures
|
||||
(amd64, &i386;, and &sparc64;), and
|
||||
(amd64, &i386;, ia64, powerpc, and &sparc64;), and
|
||||
<replaceable>${branch}</replaceable> will be used
|
||||
to specify the build branch (6, 6-exp, 7, 7-exp, 8, 8-exp).
|
||||
to specify the build branch (6, 7, 7-exp, 8, 8-exp, 9, 9-exp).
|
||||
</para>
|
||||
|
||||
<note>
|
||||
<para>Packages are no longer built for Release 4 or 5, nor
|
||||
for the alpha nor ia64 architectures.</para>
|
||||
for the alpha architecture.</para>
|
||||
</note>
|
||||
|
||||
<para>The scripts that control all of this live in
|
||||
|
@ -141,7 +141,6 @@
|
|||
|
||||
<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>
|
||||
|
||||
|
@ -179,13 +178,6 @@
|
|||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><command>dopackages.6-exp</command> - Perform
|
||||
a 6.X build with experimental patches
|
||||
(6-exp branch)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><command>dopackages.7</command> - Perform
|
||||
a 7.X build
|
||||
|
@ -475,6 +467,15 @@
|
|||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><literal>build create <replaceable>arch</replaceable>
|
||||
<replaceable>branch</replaceable>
|
||||
[<replaceable>newid</replaceable>]</literal> - Creates
|
||||
<replaceable>newid</replaceable> (or a datestamp if not specified).
|
||||
Only needed when bringing up a new branch or a new architecture.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><literal>build clone <replaceable>arch</replaceable>
|
||||
<replaceable>branch</replaceable> <replaceable>oldid</replaceable>
|
||||
|
@ -633,7 +634,7 @@
|
|||
|
||||
<para>To free up resources, you will need to clean up client machines by
|
||||
running <command>build cleanup</command> command. For example:
|
||||
<screen>&prompt.user; <userinput>/var/portbuild/scripts/build cleanup i386 6-exp 20080714120411 -full</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>/var/portbuild/scripts/build cleanup i386 8-exp 20080714120411 -full</userinput></screen>
|
||||
|
||||
<para>If you forget to do this, then the old build
|
||||
<literal>chroot</literal>s will not be cleaned up for 24 hours, and no
|
||||
|
@ -656,8 +657,8 @@
|
|||
|
||||
will get you a df, and
|
||||
|
||||
<screen>allgohans "umount -f pointyhat.freebsd.org:/var/portbuild/i386/6-exp/ports"
|
||||
allgohans "umount -f pointyhat.freebsd.org:/var/portbuild/i386/6-exp/src"</screen>
|
||||
<screen>allgohans "umount -f pointyhat.freebsd.org:/var/portbuild/i386/8-exp/ports"
|
||||
allgohans "umount -f pointyhat.freebsd.org:/var/portbuild/i386/8-exp/src"</screen>
|
||||
|
||||
are supposed to get rid of the hanging mounts. You will have to
|
||||
keep doing them since there can be multiple mounts.</para>
|
||||
|
@ -665,10 +666,10 @@ allgohans "umount -f pointyhat.freebsd.org:/var/portbuild/i386/6-exp/src"</scree
|
|||
<note>
|
||||
<para>Ignore the following:
|
||||
|
||||
<screen>umount: pointyhat.freebsd.org:/var/portbuild/i386/6-exp/ports: statfs: No such file or directory
|
||||
umount: pointyhat.freebsd.org:/var/portbuild/i386/6-exp/ports: unknown file system
|
||||
umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
||||
/x/tmp/6-exp/chroot/53837/compat/linux/proc: not a file system root directory</screen>
|
||||
<screen>umount: pointyhat.freebsd.org:/var/portbuild/i386/8-exp/ports: statfs: No such file or directory
|
||||
umount: pointyhat.freebsd.org:/var/portbuild/i386/8-exp/ports: unknown file system
|
||||
umount: Cleanup of /x/tmp/8-exp/chroot/53837/compat/linux/proc failed!
|
||||
/x/tmp/8-exp/chroot/53837/compat/linux/proc: not a file system root directory</screen>
|
||||
|
||||
The former 2 mean that that client did not have those mounted;
|
||||
the latter 2 are a bug.</para>
|
||||
|
@ -925,7 +926,11 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><literal>packages-8-current</literal></para>
|
||||
<para><literal>packages-8-stable</literal></para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><literal>packages-9-current</literal></para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
|
@ -1000,7 +1005,7 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
new features or bugfixes to the ports infrastructure (i.e.
|
||||
<filename>bsd.port.mk</filename>), or to test large sweeping
|
||||
upgrades. The current experimental patches branch is
|
||||
<literal>7-exp</literal> on the amd64
|
||||
<literal>8-exp</literal> on the amd64
|
||||
architecture.</para>
|
||||
|
||||
<para>In general, an experimental patches build is run the same
|
||||
|
@ -1048,21 +1053,21 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
|
||||
<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>7</literal>
|
||||
branch is the control branch, and the <literal>7-exp</literal>
|
||||
commands to facilitate this (this assumes the <literal>8</literal>
|
||||
branch is the control branch, and the <literal>8-exp</literal>
|
||||
branch is the experimental patches branch):</para>
|
||||
|
||||
<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>
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/8-exp/errors</userinput>
|
||||
&prompt.user; <userinput>find . -name \*.log\* | sort > /tmp/8-exp-errs</userinput>
|
||||
&prompt.user; <userinput>cd /var/portbuild/i386/8/errors</userinput>
|
||||
&prompt.user; <userinput>find . -name \*.log\* | sort > /tmp/8-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/7-errs /tmp/7-exp-errs | less</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>comm -3 /tmp/8-errs /tmp/8-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
|
||||
|
@ -1117,7 +1122,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/7/ports</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/8/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>
|
||||
|
@ -1125,14 +1130,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.7 -noportscvs -nobuild -nocvs -nofinish</userinput></screen>
|
||||
<screen>&prompt.user; <userinput>/var/portbuild/scripts/dopackages.8 -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/7/packages/All</userinput>
|
||||
<screen>&prompt.user; <userinput>cd /var/portbuild/i386/8/packages/All</userinput>
|
||||
&prompt.user; <userinput>ln -sf ../../Makefile .</userinput>
|
||||
&prompt.user; <userinput>make -k -j<#> <list of packages to build></userinput></screen>
|
||||
|
||||
|
@ -1298,11 +1303,16 @@ umount: Cleanup of /x/tmp/6-exp/chroot/53837/compat/linux/proc failed!
|
|||
<para>Generate a kernel config file. Include
|
||||
<literal>GENERIC</literal> (or, if you are using more than
|
||||
3.5G on &i386;, <literal>PAE</literal>).
|
||||
</para>
|
||||
<para>
|
||||
Required options:<screen>
|
||||
options NULLFS
|
||||
options TMPFS</screen>
|
||||
</para>
|
||||
<para>
|
||||
Suggested options:<screen>
|
||||
options GEOM_CONCAT
|
||||
options GEOM_STRIPE
|
||||
options NULLFS
|
||||
options TMPFS
|
||||
options SHMMAXPGS=65536
|
||||
options SEMMNI=40
|
||||
options SEMMNS=240
|
||||
|
@ -1314,7 +1324,8 @@ options PRINTF_BUFR_SIZE=128</screen>
|
|||
</para>
|
||||
|
||||
<para>For <literal>PAE</literal>, it is not currently possible
|
||||
to load modules. Therefore, you will need to add:<screen>
|
||||
to load modules. Therefore, if you are running an architecture
|
||||
that supports Linux emulation, you will need to add:<screen>
|
||||
options COMPAT_LINUX
|
||||
options LINPROCFS</screen>
|
||||
</para>
|
||||
|
|
Loading…
Reference in a new issue