Source string Read only

(itstool) path: listitem/screen

115/1150
Context English State
During the release cycle, a copy of <filename>CHECKSUM.SHA512</filename> and <filename>CHECKSUM.SHA256</filename> for each architecture are stored in the FreeBSD Release Engineering Team internal repository in addition to being included in the various announcement emails. Each <filename>MANIFEST</filename> containing the hashes of <filename>base.txz</filename>, <filename>kernel.txz</filename>, etc. are added to <package>misc/freebsd-release-manifests</package> in the Ports Collection, as well.
In preparation for the release build, several files need to be updated:
Update the <varname>BRANCH</varname> value to <literal>RELEASE</literal>
<filename>UPDATING</filename>
Add the anticipated announcement date
<filename>lib/csu/common/crtbrand.c</filename>
Replace <literal>__FreeBSD_version</literal> with the value in <filename>sys/sys/param.h</filename>
After building the final <literal>RELEASE</literal>, the <literal>releng/<replaceable>12.0</replaceable>/</literal> branch is tagged as <literal>release/<replaceable>12.0.0</replaceable>/</literal> using the revision from which the <literal>RELEASE</literal> was built. Similar to creating the <literal>stable/<replaceable>12</replaceable>/</literal> and <literal>releng/<replaceable>12.0</replaceable>/</literal> branches, this is done with <command>svn cp</command>. From the repository root:
<prompt>%</prompt> <userinput>svn cp ^/<literal>releng/<replaceable>12.0</replaceable>/</literal>@r<replaceable>306420</replaceable> <literal>release/<replaceable>12.0.0</replaceable>/</literal></userinput>
<prompt>%</prompt> <userinput>svn commit <literal>release/<replaceable>12.0.0</replaceable>/</literal></userinput>
Publishing FreeBSD Installation Media to Project Mirrors
This section describes the procedure to publish FreeBSD development snapshots and releases to the Project mirrors.
Staging FreeBSD Installation Media Images
Staging FreeBSD snapshots and releases is a two part process:
Creating the directory structure to match the hierarchy on <systemitem>ftp-master</systemitem>
If <literal>EVERYTHINGISFINE</literal> is defined in the build configuration files, <filename>main.conf</filename> in the case of the build scripts referenced above, this happens automatically in the <citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>8</manvolnum></citerefentry> after the build is complete, creating the directory structure in <filename class="directory">${DESTDIR}/R/ftp-stage</filename> with a path structure matching what is expected on <systemitem>ftp-master</systemitem>. This is equivalent to running the following in the <citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>8</manvolnum></citerefentry> directly:
<prompt>#</prompt> <userinput>make -C /usr/src/release -f Makefile.mirrors EVERYTHINGISFINE=1 ftp-stage</userinput>
After each architecture is built, <filename>thermite.sh</filename> will <application>rsync</application> the <filename class="directory">${DESTDIR}/R/ftp-stage</filename> from the build <citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>8</manvolnum></citerefentry> to <filename class="directory">/snap/ftp/snapshots</filename> or <filename class="directory">/snap/ftp/releases</filename> on the build host, respectively.
Copying the files to a staging directory on <systemitem>ftp-master</systemitem> before moving the files into <filename class="directory">pub/</filename> to begin propagation to the Project mirrors
Once all builds have finished, <filename class="directory">/snap/ftp/snapshots</filename>, or <filename class="directory">/snap/ftp/releases</filename> for a release, is polled by <systemitem>ftp-master</systemitem> using <application>rsync</application> to <filename class="directory">/archive/tmp/snapshots</filename> or <filename class="directory">/archive/tmp/releases</filename>, respectively.
On <systemitem>ftp-master</systemitem> in the FreeBSD Project infrastructure, this step requires <literal>root</literal> level access, as this step must be executed as the <literal>archive</literal> user.
Publishing FreeBSD Installation Media
Once the images are staged in <filename class="directory">/archive/tmp/</filename>, they are ready to be made public by putting them in <filename class="directory">/archive/pub/FreeBSD</filename>. In order to reduce propagation time, <citerefentry><refentrytitle>pax</refentrytitle><manvolnum>1</manvolnum></citerefentry> is used to create hard links from <filename class="directory">/archive/tmp</filename> to <filename class="directory">/archive/pub/FreeBSD</filename>.
In order for this to be effective, both <filename class="directory">/archive/tmp</filename> and <filename class="directory">/archive/pub</filename> must reside on the same logical filesystem.
There is a caveat, however, where <application>rsync</application> must be used after <citerefentry><refentrytitle>pax</refentrytitle><manvolnum>1</manvolnum></citerefentry> in order to correct the symbolic links in <filename class="directory">pub/FreeBSD/<replaceable>snapshots</replaceable>/ISO-IMAGES</filename> which <citerefentry><refentrytitle>pax</refentrytitle><manvolnum>1</manvolnum></citerefentry> will replace with a hard link, increasing the propagation time.
As with the staging steps, this requires <literal>root</literal> level access, as this step must be executed as the <literal>archive</literal> user.
As the <literal>archive</literal> user:
<prompt>%</prompt> <userinput>cd /archive/tmp/<replaceable>snapshots</replaceable></userinput>
<prompt>%</prompt> <userinput>pax -r -w -l . /archive/pub/FreeBSD/<replaceable>snapshots</replaceable></userinput>
<prompt>%</prompt> <userinput>/usr/local/bin/rsync -avH /archive/tmp/<replaceable>snapshots</replaceable>/* /archive/pub/FreeBSD/<replaceable>snapshots</replaceable>/</userinput>
Replace <replaceable>snapshots</replaceable> with <replaceable>releases</replaceable> as appropriate.
Wrapping up the Release Cycle
This section describes general post-release tasks.
Post-Release Errata Notices

Loading…

No matching activity found.

Browse all component changes

Glossary

English English
No related strings found in the glossary.

Source information

Source string comment

(itstool) path: listitem/screen

Flags
ignore-same, no-wrap, read-only
Source string location
article.translate.xml:1453
String age
a year ago
Source string age
a year ago
Translation file
articles/freebsd-releng.pot, string 280