rdonkin 2003/09/01 15:58:45
Added: docs/site convert-to-mirror.html
xdocs/site convert-to-mirror.xml
Log:
Added some documentation to help subprojects switch to mirrored distributions.
Revision Changes Path
1.1 jakarta-site2/docs/site/convert-to-mirror.html
Index: convert-to-mirror.html
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<!-- Content Stylesheet for Site -->
<!-- start the processing -->
<!-- ====================================================================== -->
<!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! -->
<!-- Main Page Section -->
<!-- ====================================================================== -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<meta name="author"
value="Robert Burrell Donkin">
<meta name="email" value="[EMAIL PROTECTED]">
<title>The Jakarta Site - Converting A Sub Project To Mirror
Releases</title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#525D76">
<table border="0" width="100%" cellspacing="0">
<!-- TOP IMAGE -->
<tr>
<td colspan="2">
<a href="http://jakarta.apache.org"><img
src="http://jakarta.apache.org/images/jakarta-logo.gif" align="left" border="0"/></a>
</td>
</tr>
</table>
<table border="0" width="100%" cellspacing="4">
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr>
<!-- LEFT SIDE NAVIGATION -->
<td width="20%" valign="top" nowrap="true">
<p><strong>About Jakarta</strong></p>
<ul>
<li> <a href="../index.html">Welcome</a>
</li>
<li> <a href="http://www.apache.org/foundation/">About The
ASF</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/news/index.html">News & Status</a>
</li>
<li> <a href="http://www.apache.org/">Apache Website</a>
</li>
<li> <a
href="http://www.google.com/advanced_search?q=+site:jakarta.apache.org&hl=en&as_qdr=all">Search
Jakarta</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/contact.html">Contacting Us</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/mission.html">Our Mission</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/whoweare.html">Who We Are</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/acknowledgements.html">Acknowledgements</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/legal.html">Legal</a>
</li>
</ul>
<p><strong>Reference</strong></p>
<ul>
<li> <a href="http://jakarta.apache.org/site/faqs.html">Our
FAQs</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/getinvolved.html">Get Involved</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/vendors.html">Vendor Support</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/guidelines.html">Project Guidelines</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/library.html">Reference Library</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/newproject.html">New Subprojects</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/jakarta-site2.html">Website Maintenance</a>
</li>
<li> <a
href="http://incubator.apache.org/drafts/glossary.html">ASF Glossary</a>
</li>
<li> <a href="http://www.apache.org/dev/">Developer
Resources</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/jspa-position.html">Apache on the JSPA</a>
</li>
</ul>
<p><strong>Support</strong></p>
<ul>
<li> <a
href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
</li>
<li> <a href="http://jakarta.apache.org/site/bugs.html">Bug
Database</a>
</li>
<li> <a href="http://nagoya.apache.org/wiki">Wiki</a>
</li>
</ul>
<p><strong>Downloads</strong></p>
<ul>
<li> <a
href="http://jakarta.apache.org/site/binindex.cgi">Binaries</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/sourceindex.cgi">Source Code</a>
</li>
<li> <a
href="http://jakarta.apache.org/site/cvsindex.html">CVS Repositories</a>
</li>
</ul>
<p><strong>Products</strong></p>
<ul>
<li> <a href="../alexandria/index.html">Alexandria</a>
</li>
<li> <a href="../bcel/index.html">BCEL</a>
</li>
<li> <a href="../bsf/index.html">BSF</a>
</li>
<li> <a href="../cactus/index.html">Cactus</a>
</li>
<li> <a href="../commons/index.html">Commons</a>
</li>
<li> <a href="../ecs/index.html">ECS</a>
</li>
<li> <a href="../gump/index.html">Gump</a>
</li>
<li> <a href="../jetspeed/index.html">Jetspeed</a>
</li>
<li> <a href="../jmeter/index.html">JMeter</a>
</li>
<li> <a href="../log4j/index.html">Log4J</a>
</li>
<li> <a href="../lucene/index.html">Lucene</a>
</li>
<li> <a href="../oro/index.html">ORO</a>
</li>
<li> <a href="../poi/index.html">POI</a>
</li>
<li> <a href="../regexp/index.html">Regexp</a>
</li>
<li> <a href="../slide/index.html">Slide</a>
</li>
<li> <a href="../struts/index.html">Struts</a>
</li>
<li> <a href="../taglibs/index.html">Taglibs</a>
</li>
<li> <a href="../tapestry/index.html">Tapestry</a>
</li>
<li> <a href="../tomcat/index.html">Tomcat</a>
</li>
<li> <a href="../turbine/index.html">Turbine</a>
</li>
<li> <a href="../velocity/index.html">Velocity</a>
</li>
<li> <a href="../watchdog/index.html">Watchdog</a>
</li>
</ul>
<p><strong>Related</strong></p>
<ul>
<li> <a href="http://ant.apache.org/">Ant</a>
</li>
<li> <a href="http://avalon.apache.org/">Avalon</a>
</li>
<li> <a href="http://cocoon.apache.org/">Cocoon</a>
</li>
<li> <a href="http://db.apache.org">DB</a>
</li>
<li> <a href="http://httpd.apache.org">HTTPD</a>
</li>
<li> <a href="http://james.apache.org/">James</a>
</li>
<li> <a href="http://maven.apache.org/">Maven</a>
</li>
<li> <a href="http://ws.apache.org/">Web Services</a>
</li>
<li> <a href="http://xml.apache.org">XML</a>
</li>
</ul>
</td>
<td width="80%" align="left" valign="top">
<table
border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#525D76">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Step-By-Step Guide To Distributing Existing Releases Through The
ASF Mirrors"><strong>Step-By-Step Guide To Distributing Existing Releases Through The
ASF Mirrors</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<table border="0" cellspacing="0"
cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Introduction"><strong>Introduction</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>
This is a guide to converting existing sub-projects to use the mirrors. This
contains short step-by-step
instructions. It assumes that the releases already exist. You might like to consult
<a href="http://www.apache.org/dev/mirrors.html">the ASF mirroring guildlines</a> and
<a href="http://cvs.apache.org/~bodewig/mirror.html">Stefan Bodewig's Step-By-Step
Guide</a> to mirroring.
</p>
<p>
Only copy the most modern releases onto the mirrored directories. This helps to
conserve disc space
both on the ASF servers and on the mirrors. The others should be preserved through
archive.apache.org.
(More details on this once it has been jump started.)
</p>
<p>
Throughout the guide, the examples will consistently assume that the sub-project is
called <code>xxx</code>
with current release version <code>m.n</code>,
that the Apache user is <code>rdonkin</code> who has karma for
<code>www.apache.org</code>.
It's also assume that the user is already in a suitable working directory.
The examples are for *nix (anyone want to supply some instructions for windoz?)
</p>
<p>
The examples assume that <a href="http://www.gnupg.org/">gpg</a> is used for code
signing.
If you use pgp, then they'll need to be amended appropriately.
They also use openssl for the md5 sums. md5sum (or any other sum generator) could be
used instead.
</p>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
<table border="0"
cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Instructions"><strong>Instructions</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<ol>
<li>
<strong>Check that releases are not already mirrored.</strong> If the release url
start with
<code>http://jakarta.apache.org/builds</code> then the release is not mirrored. If
the release url
starts with <code>http://www.apache.org/dist/jakarta</code> then it is mirrored.
</li>
<li>
<strong>Gain approval from development team.</strong> This can be done through lazy
consensus.
</li>
<li>
<strong>Log on</strong> to Minotaur:
<code><pre>
robert% ssh -l rdonkin www.apache.org
</pre></code>
</li>
<li>
<strong>Move to existing distribution directory</strong> for current release:
<code><pre>
> cd /www/jakarta.apache.org/builds/jakarta-xxx/release/vm.n/
</pre></code>
</li>
<li>
<strong>Tar up</strong> current release into home directory then log off:
<code><pre>
> tar -czf ~/release.tar.gz .
> exit
</pre></code>
</li>
<li>
<strong>Download</strong> to local machine:
<code><pre>
robert% scp [EMAIL PROTECTED]:~/release.tar.gz .
</pre></code>
</li>
<li>
<strong>Sign releases</strong> - untar and then sign and create md5 sums for each
releasable:
<code><pre>
$ tar xzvf ~/release.tar.gz
$ gpg --output jakarta-xxx-m.n.tgz.asc --detach-sig jakarta-xxx-m.n.tgz You need a
passphrase to unlock the secret key for
user: "Robert Burrell Donkin (CODE SIGNING KEY) <[EMAIL PROTECTED]>"
1024-bit DSA key, ID B1313DE2, created 2003-01-15
$ openssl md5 < jakarta-xxx-m.n.tgz > jakarta-xxx-m.n.tgz.md5
</pre></code>
</li>
<li>
<strong>Test signatures and sums.</strong> If possible, test by verifying from
second account and calculating sums using second method. For example:
<code><pre>
robert% gpg --verify jakarta-xxx-m.n.zip.asc jakarta-xxx-m.n.zip
gpg: Signature made 09/01/03 21:31:21 BST using DSA key ID B1313DE2
gpg: Good signature from "Robert Burrell Donkin (CODE SIGNING KEY) <[EMAIL
PROTECTED]>"
</pre></code>
</li>
<li>
<strong>Tar then upload</strong> to Minotaur:
<code><pre>
$ tar czvf ~/release.tar.gz .
[localhost:jakarta/release/xxx] robert% scp release.tar.gz [EMAIL PROTECTED]:~/
</pre></code>
</li>
<li>
<strong>Log on</strong> to Minotaur and change to the jakarta (mirrored) releases
direcory
<code><pre>
% ssh -l rdonkin www.apache.org
> cd /www/www.apache.org/dist/jakarta/
</pre></code>
</li>
<li>
<strong>Create product directory</strong> (if neccessary) then change to that
directory. Create binaries and source directories. The directory structure should
match the standard layout.
</li>
<li>
<strong>Untar releases</strong> and copy to appropriate subfolders
<code><pre>
> tar xzfv ~/release.tar.gz .
> mv jakarta-xxx-m.n.src* source
> mv jakarta-xxx-m.n* binaries
</pre></code>
</li>
<li>
<strong>Relink</strong> current release links. It's a good idea to test these links
now.
<code><pre>
> rm jakarta-xxx-current-*
> ln -s source/jakarta-xxx-m.n.src.zip jakarta-xxx-current-src.zip
> ln -s source/jakarta-xxx-m.n.src.zip.asc jakarta-xxx-current-src.zip.asc
> ln -s source/jakarta-xxx-m.n.src.tgz jakarta-xxx-current-src.tgz
> ln -s source/jakarta-xxx-m.n.src.tgz.asc jakarta-xxx-current-src.tgz.asc
> ln -s binaries/jakarta-xxx-m.n.tgz jakarta-xxx-current-bin.tgz
> ln -s binaries/jakarta-xxx-m.n.tgz.asc jakarta-xxx-current-bin.tgz.asc
> ln -s binaries/jakarta-xxx-m.n.zip jakarta-xxx-current-bin.zip
> ln -s binaries/jakarta-xxx-m.n.zip.asc jakarta-xxx-current-bin.zip.asc
</pre></code>
</li>
<li>
<strong>Update KEYS</strong> file. Make sure that the key used to sign the releases
is included in the KEYS
file.
</li>
<li>
<strong>Update websites</strong>. The main jakarta website project
<code>jakarta-site2</code> contains
pages <code>xdocs/site/sourceindex.xml</code> and
<code>xdocs/site/binindex.xml</code>. These pages
contain reference to the release directories. These need updating to link to the
mirrored directories
<code>http://www.apache.org/dist/jakarta/xxx/binaries/</code> and
<code>http://www.apache.org/dist/jakarta/xxx/source/</code>.
The product web site needs to be updated according as well.
</li>
<li>
<strong>Inform developers</strong> with a polite email to their list.
</li>
</ol>
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
</table>
</blockquote>
</p>
</td></tr>
<tr><td><br/></td></tr>
</table>
</td>
</tr>
<!-- FOOTER -->
<tr><td colspan="2">
<hr noshade="" size="1"/>
</td></tr>
<tr><td colspan="2">
<div align="center"><font color="#525D76" size="-1"><em>
Copyright © 1999-2003, Apache Software Foundation
</em></font></div>
</td></tr>
</table>
</body>
</html>
<!-- end the processing -->
1.1 jakarta-site2/xdocs/site/convert-to-mirror.xml
Index: convert-to-mirror.xml
===================================================================
<?xml version="1.0"?>
<document>
<properties>
<author email="[EMAIL PROTECTED]">Robert Burrell Donkin</author>
<title>Converting A Sub Project To Mirror Releases</title>
</properties>
<body>
<section name="Step-By-Step Guide To Distributing Existing Releases Through The
ASF Mirrors">
<subsection name='Introduction'>
<p>
This is a guide to converting existing sub-projects to use the mirrors. This
contains short step-by-step
instructions. It assumes that the releases already exist. You might like to consult
<a href='http://www.apache.org/dev/mirrors.html'>the ASF mirroring guildlines</a> and
<a href='http://cvs.apache.org/~bodewig/mirror.html'>Stefan Bodewig's Step-By-Step
Guide</a> to mirroring.
</p>
<p>
Only copy the most modern releases onto the mirrored directories. This helps to
conserve disc space
both on the ASF servers and on the mirrors. The others should be preserved through
archive.apache.org.
(More details on this once it has been jump started.)
</p>
<p>
Throughout the guide, the examples will consistently assume that the sub-project is
called <code>xxx</code>
with current release version <code>m.n</code>,
that the Apache user is <code>rdonkin</code> who has karma for
<code>www.apache.org</code>.
It's also assume that the user is already in a suitable working directory.
The examples are for *nix (anyone want to supply some instructions for windoz?)
</p>
<p>
The examples assume that <a href='http://www.gnupg.org/'>gpg</a> is used for code
signing.
If you use pgp, then they'll need to be amended appropriately.
They also use openssl for the md5 sums. md5sum (or any other sum generator) could be
used instead.
</p>
</subsection>
<subsection name='Instructions'>
<ol>
<li>
<strong>Check that releases are not already mirrored.</strong> If the release url
start with
<code>http://jakarta.apache.org/builds</code> then the release is not mirrored. If
the release url
starts with <code>http://www.apache.org/dist/jakarta</code> then it is mirrored.
</li>
<li>
<strong>Gain approval from development team.</strong> This can be done through lazy
consensus.
</li>
<li>
<strong>Log on</strong> to Minotaur:
<code><pre>
robert% ssh -l rdonkin www.apache.org
</pre></code>
</li>
<li>
<strong>Move to existing distribution directory</strong> for current release:
<code><pre>
> cd /www/jakarta.apache.org/builds/jakarta-xxx/release/vm.n/
</pre></code>
</li>
<li>
<strong>Tar up</strong> current release into home directory then log off:
<code><pre>
> tar -czf ~/release.tar.gz .
> exit
</pre></code>
</li>
<li>
<strong>Download</strong> to local machine:
<code><pre>
robert% scp [EMAIL PROTECTED]:~/release.tar.gz .
</pre></code>
</li>
<li>
<strong>Sign releases</strong> - untar and then sign and create md5 sums for each
releasable:
<code><pre>
$ tar xzvf ~/release.tar.gz
$ gpg --output jakarta-xxx-m.n.tgz.asc --detach-sig jakarta-xxx-m.n.tgz You need a
passphrase to unlock the secret key for
user: "Robert Burrell Donkin (CODE SIGNING KEY) <[EMAIL PROTECTED]>"
1024-bit DSA key, ID B1313DE2, created 2003-01-15
$ openssl md5 < jakarta-xxx-m.n.tgz > jakarta-xxx-m.n.tgz.md5
</pre></code>
</li>
<li>
<strong>Test signatures and sums.</strong> If possible, test by verifying from
second account and calculating sums using second method. For example:
<code><pre>
robert% gpg --verify jakarta-xxx-m.n.zip.asc jakarta-xxx-m.n.zip
gpg: Signature made 09/01/03 21:31:21 BST using DSA key ID B1313DE2
gpg: Good signature from "Robert Burrell Donkin (CODE SIGNING KEY) <[EMAIL
PROTECTED]>"
</pre></code>
</li>
<li>
<strong>Tar then upload</strong> to Minotaur:
<code><pre>
$ tar czvf ~/release.tar.gz .
[localhost:jakarta/release/xxx] robert% scp release.tar.gz [EMAIL PROTECTED]:~/
</pre></code>
</li>
<li>
<strong>Log on</strong> to Minotaur and change to the jakarta (mirrored) releases
direcory
<code><pre>
% ssh -l rdonkin www.apache.org
> cd /www/www.apache.org/dist/jakarta/
</pre></code>
</li>
<li>
<strong>Create product directory</strong> (if neccessary) then change to that
directory. Create binaries and source directories. The directory structure should
match the standard layout.
</li>
<li>
<strong>Untar releases</strong> and copy to appropriate subfolders
<code><pre>
> tar xzfv ~/release.tar.gz .
> mv jakarta-xxx-m.n.src* source
> mv jakarta-xxx-m.n* binaries
</pre></code>
</li>
<li>
<strong>Relink</strong> current release links. It's a good idea to test these links
now.
<code><pre>
> rm jakarta-xxx-current-*
> ln -s source/jakarta-xxx-m.n.src.zip jakarta-xxx-current-src.zip
> ln -s source/jakarta-xxx-m.n.src.zip.asc jakarta-xxx-current-src.zip.asc
> ln -s source/jakarta-xxx-m.n.src.tgz jakarta-xxx-current-src.tgz
> ln -s source/jakarta-xxx-m.n.src.tgz.asc jakarta-xxx-current-src.tgz.asc
> ln -s binaries/jakarta-xxx-m.n.tgz jakarta-xxx-current-bin.tgz
> ln -s binaries/jakarta-xxx-m.n.tgz.asc jakarta-xxx-current-bin.tgz.asc
> ln -s binaries/jakarta-xxx-m.n.zip jakarta-xxx-current-bin.zip
> ln -s binaries/jakarta-xxx-m.n.zip.asc jakarta-xxx-current-bin.zip.asc
</pre></code>
</li>
<li>
<strong>Update KEYS</strong> file. Make sure that the key used to sign the releases
is included in the KEYS
file.
</li>
<li>
<strong>Update websites</strong>. The main jakarta website project
<code>jakarta-site2</code> contains
pages <code>xdocs/site/sourceindex.xml</code> and
<code>xdocs/site/binindex.xml</code>. These pages
contain reference to the release directories. These need updating to link to the
mirrored directories
<code>http://www.apache.org/dist/jakarta/xxx/binaries/</code> and
<code>http://www.apache.org/dist/jakarta/xxx/source/</code>.
The product web site needs to be updated according as well.
</li>
<li>
<strong>Inform developers</strong> with a polite email to their list.
</li>
</ol>
</subsection>
</section>
</body>
</document>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]