svn commit: r46515 - head/en_US.ISO8859-1/articles/releng

Glen Barber <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
Author: gjb
Date: Sat Apr 11 04:44:58 2015
New Revision: 46515
URL: https://svnweb.freebsd.org/changeset/doc/46515

Log:
  Revert r46484, r46485, r46511, r46512:
    The claim that there were no "substantive" commits to this
    article are made without any knowledge of internals of re@.
  
    Several parts of the removed content is still relevant for
    8.x, which we do still support.
  
    Furthermore, this particular article, outdated or not, falls
    under RE territory, and these drive-by commits were not
    approved.
  
  Approved by:	re (implicit)

Modified:
  head/en_US.ISO8859-1/articles/releng/article.xml

Modified: head/en_US.ISO8859-1/articles/releng/article.xml
==============================================================================
--- head/en_US.ISO8859-1/articles/releng/article.xml	Fri Apr 10 15:54:36 2015	(r46514)
+++ head/en_US.ISO8859-1/articles/releng/article.xml	Sat Apr 11 04:44:58 2015	(r46515)
@@ -5,6 +5,14 @@
 <article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="en">
   
   <info><title>&os; Release Engineering</title>
+
+    
+    
+    <confgroup>
+      <confdates>November 2001</confdates>
+      <conftitle>BSDCon Europe</conftitle>
+    </confgroup>
+
     <authorgroup>
       <author><personname><firstname>Murray</firstname><surname>Stokely</surname></personname><personblurb>
           <para>I've been involved in the development of &os; based products
@@ -55,7 +63,12 @@
   <para>The development of &os; is a very open process.  &os; is
     comprised of contributions from thousands of people around the
     world.  The &os; Project provides
-    <application>Subversion</application>
+    Subversion
+    <footnote>
+      <simpara>
+        Subversion, <uri xlink:href="http://subversion.apache.org">http://subversion.apache.org</uri>  
+      </simpara>
+    </footnote>
     access to the general public so that
     others can have access to log messages, diffs (patches) between
     development branches, and other productivity enhancements that
@@ -66,8 +79,18 @@
     Therefore only a <quote>select</quote> group of nearly 300 people are
     given write access to the Subversion repository.  These
     <link xlink:href="&url.articles.contributors;/article.html#staff-committers">committers</link>
+    <footnote>
+      <simpara>
+        <link xlink:href="&url.articles.contributors;/article.html#staff-committers">FreeBSD committers</link>
+      </simpara>
+    </footnote>
     are usually the people who do the bulk of &os; development.  An elected
     <link xlink:href="&url.base;/administration.html#t-core">Core Team</link>
+    <footnote>
+      <simpara>
+        <link xlink:href="&url.base;/administration.html#t-core">&os; Core Team</link>
+      </simpara>
+    </footnote>
     of developers provide some level of direction over the project.</para>
 
   <para>The rapid pace of <systemitem>&os;</systemitem>
@@ -145,6 +168,55 @@
     available to keep systems on the
     <emphasis>releng/<replaceable>X</replaceable>.<replaceable>Y</replaceable></emphasis>
     branches updated.</para>
+ 
+  <sect2>
+    <title>What this article describes</title>
+ 
+    <para>The following sections of this article describe:</para>
+ 
+    <variablelist>
+      <varlistentry>
+	<term><xref linkend="release-proc"/></term>
+ 
+	<listitem>
+	  <para>The different phases of the release engineering process
+	    leading up to the actual system build.</para>
+	</listitem>
+      </varlistentry>
+ 
+      <varlistentry>
+	<term><xref linkend="release-build"/></term>
+ 
+	<listitem>
+	  <para>The actual build process.</para>
+	</listitem>
+      </varlistentry>
+ 
+      <varlistentry>
+	<term><xref linkend="extensibility"/></term>
+
+	<listitem>
+	  <para>How the base release may be extended by third parties.</para>
+	</listitem>
+      </varlistentry>
+ 
+      <varlistentry>
+	<term><xref linkend="lessons-learned"/></term>
+
+	<listitem>
+	  <para>Some of the lessons learned through the release of &os;&nbsp;4.4.</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><xref linkend="future"/></term>
+
+	<listitem>
+	  <para>Future directions of development.</para>
+	</listitem>
+      </varlistentry>
+    </variablelist>
+  </sect2>
 </sect1>
 
 <!-- Release Process -->
@@ -446,6 +518,18 @@
         </listitem>
       </itemizedlist>
 
+      <para><application>Sysinstall</application> should be updated to note
+        the number of available ports and the amount of disk space required
+	for the Ports Collection.
+        <footnote>
+          <simpara>
+            &os; Ports Collection
+            <uri xlink:href="http://www.FreeBSD.org/ports">http://www.FreeBSD.org/ports</uri>
+          </simpara>
+        </footnote>
+        This information is currently kept in
+	<filename>src/usr.sbin/sysinstall/dist.c</filename>.</para>
+
       <para>After the release has been built, a number of files should
 	be updated to announce the release to the world.  These files
 	are relative to <literal>head/</literal> within the
@@ -631,6 +715,95 @@
       be unwise to distribute binaries that were built on a system
       with <varname>CPUTYPE</varname> set to a specific
       processor.</para></note>
+
+  </sect2>
+
+  <sect2>
+    <title>Contributed Software (<quote>ports</quote>)</title>
+
+    <para>The <link xlink:href="http://www.FreeBSD.org/ports">&os; Ports
+      collection</link> is a collection of over &os.numports;
+      third-party software packages available for &os;. The &a.portmgr;
+      is responsible for maintaining a consistent ports tree that can be used
+      to create the binary packages that accompany official &os;
+      releases.</para>
+  </sect2>
+
+  <sect2>
+    <title>Release ISOs</title>
+
+    <para>Starting with &os;&nbsp;4.4, the &os; Project decided to
+      release all four ISO images that were previously sold on the
+      <emphasis>BSDi/Wind River Systems/FreeBSD Mall</emphasis>
+      <quote>official</quote> CDROM distributions. Each of the four
+      discs must contain a <filename>README.TXT</filename> file that
+      explains the contents of the disc, a
+      <filename>CDROM.INF</filename> file that provides meta-data for
+      the disc so that &man.sysinstall.8; can validate and use the
+      contents, and a <filename>filename.txt</filename> file that
+      provides a manifest for the disc. This
+      <emphasis>manifest</emphasis> can be created with a simple
+      command:</para>
+
+    <screen>/stage/cdrom&prompt.root; <userinput>find . -type f | sed -e 's/^\.\///' | sort &gt; filename.txt</userinput></screen>
+
+    <para>The specific requirements of each CD are outlined below.</para>
+
+    <sect3>
+      <title>Disc 1</title>
+
+      <para>The first disc is almost completely created by
+        <command>make
+        release</command>. The only changes
+        that should be made to the <filename>disc1</filename> directory are the addition of
+        a <filename>tools</filename> directory, and as many popular
+        third party software packages as will fit on the disc. The
+        <filename>tools</filename> directory contains software that allow users to create
+        installation floppies from other operating systems. This disc
+        should be made bootable so that users of modern PCs do not
+        need to create installation floppy disks.</para>
+
+      <para>If a custom kernel of &os; is to be included, then
+        &man.sysinstall.8; and &man.release.7; must be updated to
+        include installation instructions. The relevant code is contained
+        in <filename>src/release</filename> and <filename>src/usr.sbin/sysinstall</filename>.
+        Specifically, the file <filename>src/release/Makefile</filename>, and
+        <filename>dist.c</filename>, <filename>dist.h</filename>,
+        <filename>menus.c</filename>, <filename>install.c</filename>, and
+        <filename>Makefile</filename> will need to be updated under
+        <filename>src/usr.sbin/sysinstall</filename>.  Optionally, you may choose
+        to update <filename>sysinstall.8</filename>.</para>
+
+    </sect3>
+
+    <sect3>
+      <title>Disc 2</title>
+
+      <para>The second disc is also largely created by <command>make
+        release</command>. This disc contains a <quote>live
+        filesystem</quote> that can be used from &man.sysinstall.8; to
+        troubleshoot a &os; installation. This disc should be
+        bootable and should also contain a compressed copy of the CVS
+        repository in the <filename>CVSROOT</filename> directory and
+        commercial software demos in the <filename>commerce</filename>
+        directory.</para>
+    </sect3>
+
+    <sect3>
+      <title>Multi-volume support</title>
+
+      <para><application>Sysinstall</application> supports multiple
+        volume package installations.  This requires that each disc
+        have an <filename>INDEX</filename> file containing all of the
+        packages on all volumes of a set, along with an extra field
+        that indicates which volume that particular package is on.
+        Each volume in the set must also have the
+        <literal>CD_VOLUME</literal> variable set in the
+        <filename>cdrom.inf</filename> file so that sysinstall can
+        tell which volume is which.  When a user attempts to install a
+        package that is not on the current disc, sysinstall will
+        prompt the user to insert the appropriate one.</para>
+    </sect3>
   </sect2>
 </sect1>
 
@@ -709,6 +882,13 @@
     time, for example make it relative to GMT.</para>
   </sect2>
 
+  <sect2 xml:id="dist-cdrom">
+    <title>CD-ROM Replication</title>
+
+    <para>Coming soon: Tips for sending &os; ISOs to a replicator
+      and quality assurance measures to be taken.</para>
+  </sect2>
+
 </sect1>
 
 <!-- Extensibility -->
@@ -727,8 +907,25 @@
     certainly encourage innovation in the form of advanced
     installation and administration tools, for example, but we cannot
     be expected to answer questions about it.</para>
+
+  <sect2>
+    <title>Scripting <command>sysinstall</command></title>
+
+    <para>The &os; system installation and configuration tool,
+      &man.sysinstall.8;, can be scripted to provide automated installs
+      for large sites. This functionality can be used in conjunction
+      with &intel; PXE
+      <footnote>
+        <simpara>
+          <uri xlink:href="&url.books.handbook;/network-pxe-nfs.html">&url.books.handbook;/network-pxe-nfs.html</uri>
+        </simpara>
+      </footnote>
+      to bootstrap systems from the network.
+    </para>
+  </sect2>
 </sect1>
 
+<!-- Lessons Learned -->
 <sect1 xml:id="lessons-learned">
   <title>Lessons Learned from &os;&nbsp;4.4</title>
 
@@ -771,12 +968,33 @@
         using multiple processors in speeding up the <command>make
         release</command> process.  If multiple disks are used for
         different hierarchies in the &man.chroot.2;
-        environment, then the subversion checkout of the <filename>ports</filename> and <filename>doc</filename> trees
+        environment, then the CVS checkout of the <filename>ports</filename> and <filename>doc</filename> trees
         can be happening simultaneously as the <command>make
         world</command> on another disk.  Using a
         <acronym>RAID</acronym> solution (hardware or software) can
         significantly decrease the overall build time.</para>
     </listitem>
+
+    <listitem>
+      <para><emphasis>Cross-building releases</emphasis> - Building
+        IA-64 or Alpha release on x86 hardware? <command>make
+        TARGET=ia64 release</command>.
+      </para>
+    </listitem>
+
+    <listitem>
+      <para><emphasis>Regression Testing</emphasis> - We need better
+        automated correctness testing for &os;.</para>
+    </listitem>
+
+    <listitem>
+      <para><emphasis>Installation Tools</emphasis> - Our installation
+        program has long since outlived its intended life span.
+        Several projects are under development to provide a more
+        advanced installation mechanism.  The libh project was one
+        such project that aimed to provide an intelligent new package
+        framework and GUI installation program.</para>
+    </listitem>
   </itemizedlist>
 
 </sect1>
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-doc-all
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.