added release documentation
This commit is contained in:
parent
497fca8c77
commit
47c4237be5
2 changed files with 124 additions and 2 deletions
|
@ -13,7 +13,7 @@ Development Loan Fund</a>, under the GNU <a
|
|||
href="http://www.gnu.org/licenses/gpl.html">GPL</a>.<br>
|
||||
<ul>
|
||||
<li>Author: $Author: maroy $</li>
|
||||
<li>Version: $Revision: 1.6 $</li>
|
||||
<li>Version: $Revision: 1.7 $</li>
|
||||
<li>Location: $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/doc/index.html,v $</li>
|
||||
</ul>
|
||||
<h1>Scope</h1>
|
||||
|
@ -33,7 +33,8 @@ compile LiveSupport<br>
|
|||
<li>LiveSupport <a href="developmentEnvironment/index.html">development
|
||||
environment</a></li>
|
||||
<li>UML <a href="model/index.html">model</a></li>
|
||||
<li><a href="install.html">installation instructions</a><br>
|
||||
<li><a href="install.html">installation instructions</a></li>
|
||||
<li><a href="release.html">release process</a><br>
|
||||
</li>
|
||||
</ul>
|
||||
<h1>Generated documentation</h1>
|
||||
|
|
121
livesupport/doc/release.html
Normal file
121
livesupport/doc/release.html
Normal file
|
@ -0,0 +1,121 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=UTF-8" http-equiv="content-type">
|
||||
<title>LiveSupport release process documentation</title>
|
||||
<meta content="$Author: maroy $" name="author">
|
||||
</head>
|
||||
<body>
|
||||
<h1>Preface</h1>
|
||||
This document is part of the <a href="http://livesupport.campware.org/">LiveSupport</a>
|
||||
project, Copyright © 2004 <a href="http://www.mdlf.org/">Media
|
||||
Development Loan Fund</a>, under the GNU <a
|
||||
href="http://www.gnu.org/licenses/gpl.html">GPL</a>.<br>
|
||||
<ul>
|
||||
<li>Author: $Author: maroy $</li>
|
||||
<li>Version: $Revision: 1.1 $</li>
|
||||
<li>Location: $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/doc/release.html,v $</li>
|
||||
</ul>
|
||||
<h1>Scope</h1>
|
||||
This document describes the process of releasing a new version of
|
||||
LiveSupport. Obviously this document is only relevant to people who
|
||||
have the rights and permissions to make such a release.<br>
|
||||
<h1>Introduction</h1>
|
||||
For all the releases of LiveSupport to remain consistent, it is
|
||||
preferable to have a repeatable release process, which will be followed
|
||||
when creating releases. This ensures that no matter who creates the
|
||||
releases, they will remain similar.<br>
|
||||
<br>
|
||||
The release process boils down to the following steps:<br>
|
||||
<ul>
|
||||
<li>getting LiveSupport sources</li>
|
||||
<li>checking the distribution script<br>
|
||||
</li>
|
||||
<li>creating release tarballs</li>
|
||||
<li>testing the tarballs</li>
|
||||
<li>tagging the sources</li>
|
||||
<li>publishing the tarballs</li>
|
||||
<li>announcing the release<br>
|
||||
</li>
|
||||
</ul>
|
||||
<h1>Getting LiveSupport sources</h1>
|
||||
It is assumed that the person doing the release has a read/write access
|
||||
to the LiveSupport version control system. As a first step of the
|
||||
release process, a fresh copy of the version control repository is
|
||||
check out, so as to insure that:<br>
|
||||
<ul>
|
||||
<li>the release contains exactly the files that are in the version
|
||||
control system</li>
|
||||
<li>there are no generated files in the release</li>
|
||||
</ul>
|
||||
To get a fresh copy of the LiveSupport repository, execute the
|
||||
following in an empty directory:<br>
|
||||
<br>
|
||||
<pre><code>cvs -z3 -d :ext:<username>:netfinity-5.mdlf.org:/home/cvs checkout livesupport</code><br></pre>
|
||||
<br>
|
||||
Where <code><username></code> is the user name for accessing the
|
||||
repository of the person making the release.<br>
|
||||
<h1>Checking the distribution script</h1>
|
||||
It is advisable to check the installation script <code>bin/dist.sh</code>,
|
||||
to make sure it refers to up-to-date information from the development
|
||||
environment.<br>
|
||||
<br>
|
||||
The most important aspect to check is that the specific versions of
|
||||
tools mentioned in the distribution script are in sync with the tools
|
||||
compiled by the master <code>Makefile</code> under the target <code>tools_setup</code>.
|
||||
To check this, compare tool version variables in the two files, e.g. <code>BOOST_VERSION</code>
|
||||
from <code>Makefile</code> with <code>boost_version</code> from <code>bin/dist.sh</code>.
|
||||
Make sure to check the versions for all the tools mentioned in these
|
||||
files.<br>
|
||||
<h1>Creating release tarballs<br>
|
||||
</h1>
|
||||
To create the release tarballs, invoke the distribution script <code>bin/dist.sh</code>,
|
||||
with the release version as its single parameter:<br>
|
||||
<br>
|
||||
<pre><code>./bin/dist.sh <ls-version><br></code></pre>
|
||||
<br>
|
||||
This will create two tarballs in the current directory:<br>
|
||||
<ul>
|
||||
<li><code>livesupport-<ls-version>.tar.bz2</code></li>
|
||||
<li><code>livesupport-libraries-<ls-version>.tar.bz2</code></li>
|
||||
</ul>
|
||||
<h1>Testing the tarballs</h1>
|
||||
Having broken releases is very annoying, thus it is highly recommended
|
||||
that the release tarballs are tested on a plain vanilla system. To test
|
||||
the tarballs, follow the procedure described in the LiveSupport <a
|
||||
href="install.html">installation document</a>.<br>
|
||||
<br>
|
||||
Do not publish tarballs that have not been tested, or are known to be
|
||||
broken.<br>
|
||||
<h1>Tagging the sources</h1>
|
||||
After the tarballs have been tested, the release can be finalized. As a
|
||||
first step, the current state of the LiveSupport version control
|
||||
repository has to be tagged, so that the the very versions in the
|
||||
release can be retrieved at any later date. To tag the repository,
|
||||
issue the following command from the LiveSupport checked out source
|
||||
directory:<br>
|
||||
<br>
|
||||
<pre><code>cvs tag livesupport_<ls-version><br></code></pre>
|
||||
<br>
|
||||
This will tag the current state of the repository with the tag <code>livesupport_<ls-version></code>,
|
||||
enabling later retrieval of this specific state.<br>
|
||||
<h1>Publishing the tarballs</h1>
|
||||
To make the release available to the public, the created tarballs have
|
||||
to be published. This is done by making the files accessible under the
|
||||
URL <code>http://ls-demo.campware.org/download/</code> , which can be
|
||||
achieved by moving the files to the <code>/var/www/download/</code>
|
||||
directory on the <code>ls-demo.campware.org</code> system. It is
|
||||
assumed that the person making the release has ssh access to this
|
||||
system and write access to this directory. The files can be published
|
||||
by executing the following command:<br>
|
||||
<br>
|
||||
<pre><code>scp livesupport-<ls-version>.tar.bz2 livesupport-libraries-<ls-version>.tar.bz <username>@ls-demo.campware.org:/var/www/download</code><br></pre>
|
||||
<br>
|
||||
<h1>Announcing the release</h1>
|
||||
For the public to be aware of the new release, it has to be announced.
|
||||
This is primarily done on the Campware site, but also on other
|
||||
meta-sites, like freshmeat.<br>
|
||||
<br>
|
||||
<pre><code></code></pre>
|
||||
</body>
|
||||
</html>
|
Loading…
Add table
Add a link
Reference in a new issue