unfinished release guide. It would be nice to have a html version.
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@650139 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
7ef12296b5
commit
5e615eeeba
@ -1,101 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
====================================================================
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
====================================================================
|
||||
-->
|
||||
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "../dtd/document-v11.dtd">
|
||||
|
||||
<document>
|
||||
<header>
|
||||
<title>POI Release Guide</title>
|
||||
<authors>
|
||||
<person name="Yegor Kozlov" email="yegor@apache.org"/>
|
||||
</authors>
|
||||
</header>
|
||||
|
||||
<body>
|
||||
<section>
|
||||
<title>POI Release Guide</title>
|
||||
|
||||
<section><title>Prerequisites</title>
|
||||
|
||||
<ol>
|
||||
<li> You should read the <link href="http://apache.org/dev/release.html">Apache Release FAQ</link></li>
|
||||
<li> You must have shell access to people.apache.org</li>
|
||||
<li> Release manager must have his public key appended to the KEYS file checked in to SVN and the key published on one of the public key servers.
|
||||
More info can be found here: <link href="http://www.apache.org/dev/release-signing.html">http://www.apache.org/dev/release-signing.html</link></li>
|
||||
<li> You must have <link href="http://java.sun.com">JDK 1.4 / 1.5</link></li>
|
||||
<li> You must have the following utilities installed on your local machine and available in your path:
|
||||
<ul>
|
||||
<li><link href="http://www.openssh.com">ssh</link></li>
|
||||
<li><link href="http://www.gnupg.org">gnupg</link></li>
|
||||
<li><link href="http://www.openssl.org">openssl</link></li>
|
||||
</ul>
|
||||
For Windows users, install Cygwin and make sure you have the above components.
|
||||
</li>
|
||||
<li> The POI build system requires two components to perform a build
|
||||
<ul>
|
||||
<li><link href="http://ant.apache.org">Ant</link></li>
|
||||
<li><link href="http://forrest.apache.org/">Forrest</link></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ol>
|
||||
</section>
|
||||
<section><title>Building Release Artifacts</title>
|
||||
<ul>
|
||||
<li>Ensure the changelog is up to date</li>
|
||||
<li>Tag SVN:
|
||||
<br/>
|
||||
<code> svn cp https://svn.apache.org/repos/asf/poi/trunk \ </code> <br/>
|
||||
<code> https://svn.apache.org/repos/asf/poi/tags/REL_3_0_2_BETA1 \ </code> <br/>
|
||||
<code> -m "tag trunk as REL_3_0_2_BETA1" </code>
|
||||
</li>
|
||||
<li>Update version.id in build.xml</li>
|
||||
<li>Start a new section for the next release in xdocs/sites.xml and status.xml in the documentation/content/xdocs directory</li>
|
||||
<li>Checkout the new tag:<br/>
|
||||
<code>
|
||||
svn checkout https://svn.apache.org/repos/asf/poi/tags/REL_3_0_2_BETA1
|
||||
</code>
|
||||
</li>
|
||||
<li>Merge if needed: <br/>
|
||||
<code> cd tags/REL_3_0_2_BETA1 </code><br/>
|
||||
<code> svn merge https://svn.apache.org/repos/asf/poi/tags/REL_3_0_2_BETA1 \ </code> <br/>
|
||||
<code> https://svn.apache.org/repos/asf/poi/trunk </code>
|
||||
</li>
|
||||
<li>Build as if the vote had passed. <br/>
|
||||
Typically a release vote lasts 7 days so the filename dates should be +7 days from current date.<br/>
|
||||
<code> cd tags/REL_3_0_2_BETA1 </code><br/>
|
||||
Main distribution:<br/>
|
||||
<code> ant dist </code> <br/>
|
||||
Maven artifacts:<br/>
|
||||
<code> ant maven-dist </code>
|
||||
</li>
|
||||
<li>Create MD5 checksums for all artifacts to be published:<br/>
|
||||
<code>openssl md5 < file > file.md5</code><br/>
|
||||
</li>
|
||||
<li>Signing all artifacts to be published:<br/>
|
||||
<code>gpg --armor --output file.asc --detach-sig $file; </code><br/>
|
||||
Verify signatures:
|
||||
<code>gpg --verify file.asc file</code><br/>
|
||||
</li>
|
||||
<li>Upload to your area at people.apache.org<br/></li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
135
src/documentation/release-guide.txt
Executable file
135
src/documentation/release-guide.txt
Executable file
@ -0,0 +1,135 @@
|
||||
POI Release Guide
|
||||
|
||||
|
||||
(I) Prerequisites
|
||||
|
||||
1. You should read the <a href="http://apache.org/dev/release.html">Apache Release FAQ</a>
|
||||
2. You must have shell access to people.apache.org
|
||||
3. Release manager must have his public key appended to the KEYS file checked in to SVN and the key published on one of the public key servers.
|
||||
More info can be found here: <a href="http://www.apache.org/dev/release-signing.html">http://www.apache.org/dev/release-signing.html</a>
|
||||
4. You must have <a href="java.sun.com">JDK 1.4 / 1.5</a>
|
||||
5. You must have the following utilities installed on your local machine and available in your path:
|
||||
* <a href="www.openssh.com">ssh</a>
|
||||
* <a href="www.gnupg.org">gnupg</a>
|
||||
* <a href="www.openssl.org">openssl</a>
|
||||
For Windows users, install Cygwin and make sure you have the above utilities
|
||||
6. The POI build system requires two components to perform a build
|
||||
* <a href="ant.apache.org">Ant</a>
|
||||
* <a href="http://forrest.apache.org/">Forrest</a>.
|
||||
POI 3.0.2 and 3.1 were built using Ant 1.6.2 and Forrest 0.5
|
||||
|
||||
(II) Making release artefacts
|
||||
1. Update version id in build.xml.
|
||||
2. Tag current version. Include the current revision number in the comment
|
||||
|
||||
{code}
|
||||
$ svn cp https://svn.apache.org/repos/asf/poi/trunk \
|
||||
https://svn.apache.org/repos/asf/poi/tags/$TAG \
|
||||
-m "tag r649911 as 3.1-beta1"
|
||||
{code}
|
||||
|
||||
where $TAG is the release tag, for example, REL_3_1_BETA1
|
||||
|
||||
3. Checkout the tagged version
|
||||
{code}
|
||||
cd tags
|
||||
svn checkout https://svn.apache.org/repos/asf/poi/tags/TAG
|
||||
{code}
|
||||
|
||||
4. Merge (if required)
|
||||
|
||||
{code}
|
||||
cd $TAG
|
||||
$ svn merge https://svn.apache.org/repos/asf/poi/tags/TAG \
|
||||
https://svn.apache.org/repos/asf/poi/trunk
|
||||
{code}
|
||||
|
||||
5. Start a new section in sites.xml and status.xml.
|
||||
|
||||
6. Build as if the vote had passed. The buid date must be +7 days from current.
|
||||
{code}
|
||||
ant build
|
||||
{code}
|
||||
After build you should have the following files in the build/dist:
|
||||
|
||||
{code}
|
||||
poi-$TAG-$DATE.jar
|
||||
poi-bin-$TAG-$DATE.tar.gz
|
||||
poi-bin-$TAG-$DATE.zip
|
||||
poi-contrib-$TAG-$DATE.jar
|
||||
poi-scratchpad-$TAG-$DATE.jar
|
||||
poi-src-$TAG-$DATE.tar.gz
|
||||
poi-src-$TAG-$DATE.zip
|
||||
{code}
|
||||
|
||||
where $TAG is the release tag specified in build.xml in the version.id property, $DATE is the release date (typically +7 days from the actual build date).
|
||||
7. Build Mavn POM files
|
||||
{code}
|
||||
ant maven-dist
|
||||
{code}
|
||||
|
||||
8. Signing the release artifacts:
|
||||
{code}
|
||||
cd build/dist
|
||||
for i in *.zip ; do
|
||||
gpg --armor --output $i.asc --detach-sig $i;
|
||||
done
|
||||
for i in *.gz ; do
|
||||
gpg --armor --output $i.asc --detach-sig $i;
|
||||
done
|
||||
{code}
|
||||
|
||||
Verify the signatures:
|
||||
|
||||
{code}
|
||||
gpg --multifile --verify *.asc
|
||||
{code}
|
||||
|
||||
9. Create MD5 checksums for all artifacts to be published:
|
||||
|
||||
{code}
|
||||
for i in *.zip ; do
|
||||
openssl md5 < $i > $i.md5
|
||||
done
|
||||
for i in *.gz ; do
|
||||
openssl md5 < $i > $i.md5
|
||||
done
|
||||
{code}
|
||||
|
||||
10. Upload to your area at people.apache.org.
|
||||
There should be two directories:
|
||||
main
|
||||
maven
|
||||
|
||||
Make sure that the all files have read permission.
|
||||
|
||||
(III) After the vote:
|
||||
|
||||
Log-in on people.apache.org
|
||||
|
||||
1. Go to ~/POI-3.1-BETA1
|
||||
|
||||
cd ~/POI-3.1-BETA1/main
|
||||
|
||||
BETA and ALPHA releases:
|
||||
cp *-src-* /www/www.apache.org/dist/poi/dev/src
|
||||
cp *-bin-* /www/www.apache.org/dist/poi/dev/bin
|
||||
|
||||
FINAL release:
|
||||
cp *-src-* /www/www.apache.org/dist/poi/release/src
|
||||
cp *-bin-* /www/www.apache.org/dist/poi/release/bin
|
||||
|
||||
cd ~/POI-3.1-BETA1/maven
|
||||
|
||||
cp -r org.apache.poi /www/people.apache.org/repo/m1-ibiblio-rsync-repository/
|
||||
cp -r poi/poms /www/people.apache.org/repo/m1-ibiblio-rsync-repository/poi
|
||||
|
||||
|
||||
2. Make sure that the files are owned by the unix group apcvs and that they are writable by this group.
|
||||
|
||||
3. Wait for the distributions to appear on your favourite mirror
|
||||
|
||||
4. Send announcements:
|
||||
- to poi-user and poi-dev lists
|
||||
- send announcements to announcement@apache.org, announcements@jakarta.apache.org
|
||||
|
Loading…
Reference in New Issue
Block a user