From: Yegor Kozlov Date: Mon, 21 Apr 2008 13:31:53 +0000 (+0000) Subject: unfinished release guide. It would be nice to have a html version. X-Git-Tag: REL_3_1_BETA1~1 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=23475cef7e8f371121f9c008c32c7ec36358ff38;p=poi.git 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 --- diff --git a/src/documentation/content/xdocs/utils/release-guide.xml b/src/documentation/content/xdocs/utils/release-guide.xml deleted file mode 100755 index e8680c29b9..0000000000 --- a/src/documentation/content/xdocs/utils/release-guide.xml +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -
- POI Release Guide - - - -
- - -
- POI Release Guide - -
Prerequisites - -
    -
  1. You should read the Apache Release FAQ
  2. -
  3. You must have shell access to people.apache.org
  4. -
  5. 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: http://www.apache.org/dev/release-signing.html
  6. -
  7. You must have JDK 1.4 / 1.5
  8. -
  9. You must have the following utilities installed on your local machine and available in your path: -
      -
    • ssh
    • -
    • gnupg
    • -
    • openssl
    • -
    - For Windows users, install Cygwin and make sure you have the above components. -
  10. -
  11. The POI build system requires two components to perform a build -
      -
    • Ant
    • -
    • Forrest
    • -
    -
  12. -
-
-
Building Release Artifacts -
    -
  • Ensure the changelog is up to date
  • -
  • Tag SVN: -
    - svn cp https://svn.apache.org/repos/asf/poi/trunk \
    - https://svn.apache.org/repos/asf/poi/tags/REL_3_0_2_BETA1 \
    - -m "tag trunk as REL_3_0_2_BETA1" -
  • -
  • Update version.id in build.xml
  • -
  • Start a new section for the next release in xdocs/sites.xml and status.xml in the documentation/content/xdocs directory
  • -
  • Checkout the new tag:
    - - svn checkout https://svn.apache.org/repos/asf/poi/tags/REL_3_0_2_BETA1 - -
  • -
  • Merge if needed:
    - cd tags/REL_3_0_2_BETA1
    - svn merge https://svn.apache.org/repos/asf/poi/tags/REL_3_0_2_BETA1 \
    - https://svn.apache.org/repos/asf/poi/trunk -
  • -
  • Build as if the vote had passed.
    - Typically a release vote lasts 7 days so the filename dates should be +7 days from current date.
    - cd tags/REL_3_0_2_BETA1
    - Main distribution:
    - ant dist
    - Maven artifacts:
    - ant maven-dist -
  • -
  • Create MD5 checksums for all artifacts to be published:
    - openssl md5 < file > file.md5
    -
  • -
  • Signing all artifacts to be published:
    - gpg --armor --output file.asc --detach-sig $file;
    - Verify signatures: - gpg --verify file.asc file
    -
  • -
  • Upload to your area at people.apache.org
  • -
-
- -
- -
diff --git a/src/documentation/release-guide.txt b/src/documentation/release-guide.txt new file mode 100755 index 0000000000..8a38150ac1 --- /dev/null +++ b/src/documentation/release-guide.txt @@ -0,0 +1,135 @@ +POI Release Guide + + +(I) Prerequisites + + 1. You should read the Apache Release FAQ + 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: http://www.apache.org/dev/release-signing.html + 4. You must have JDK 1.4 / 1.5 + 5. You must have the following utilities installed on your local machine and available in your path: + * ssh + * gnupg + * openssl + 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 + * Ant + * Forrest. + 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 +