Quick Links
First Things First
- Read the following pages:
- Get your own PGP or GPG key (see http://wiki.apache.org/incubator/SigningReleases
). - Update the iBATIS KEYS file found in /www/www.apache.org/dist/ibatis/ with your key.
iBATIS Release Process
BETA Quality Release
- Announce an intent to release (a release plan) on dev@.
- By convention, try to give the community at least 24 hours to review the plan (lazy consensus).
- Update doc/release.txt and build/version.properties
- TAG the SVN Repository at the trunk level with the release number – See current tags for examples http://svn.apache.org/repos/asf/ibatis/tags/

- If needed, update the directory structure in /www/www.apache.org/dist/ibatis/
- Sign the distribution to create a detached signature file (.asc)
- Place the BETA distribution, signature file, and MD5 sum in:
- /www/www.apache.org/dist/ibatis/
- Yes, this is the same directory as GA. In our history we have never rolled back a release, nor do we aggressively release betas unless we intend to release them to GA. Any pre-beta/alpha is expected to be grabbed from SVN directly. Thus, we put betas directly in the GA repository (allowed as per http://apache.org/dev/release.html
).
- Make sure the KEYS file is up to date.
- Check the upload with the signature and MD5 sum.
- Change iBATIS web site download links to point to new BETA
- Wait at least 24 hours for mirrors to obtain latest release file(s).
- Check mirrors for files.
- If needed, contact Vadim about statistics.
- Announce BETA on user lists.
GENERAL AVAILABILITY (GA) Quality Release
- If a BETA release is pending, give the community a reasonable amount of time to try the release. If feedback positive, call for a VOTE to promote the distribution from BETA to a GA (General Availability) release.
- To reach GA status, a release must have a total of three +1 votes by iBATIS PMC members and more positive votes than negative votes. If the votes are not forthcoming, scratch this release plan and start over with a new plan and a new version number.
- Relink "current release" links on the website
- Announce promotion of the build to GA on user lists.
- Note: Just because we say that a release is of GA grade today, does not mean we can't change our minds. If a security issue arose, we could downgrade the quality to BETA.
Java-specific Checklist
Steps
- Update release.txt with changes (usually can be copied straight from JIRA roadmap
- Update version.properties and build.properties with appropriate MAJOR version numbers (don't modify build number by hand)
- Run build.bat, ensure SUCCESSFUL build
- Check the exploded directory for proper directory structure
- Check the deploy directory for the ZIP file, with proper filename version
.NET-specific Checklist
Assembly/Binary Distribution
- ASF "LICENSE" text file (see http://apache.org/dev/apply-license.html
and http://wiki.apache.org/general/LicenseFormats
) - Castle.DynamicProxy assembly
- Castle.DynamicProxy license text file
- log4net assembly
- log4net license text file
- Sample sqlMap.config for DataMapper distribution
- Sample dao.config for DataAccess distribution
- providers.config file
- Check that only sqlServer1.1, OleDb1.1, and Odbc1.1 providers are enabled in the providers.config file
Documentation Distribution
- ASF "LICENSE" text file (see http://apache.org/dev/apply-license.html
and http://wiki.apache.org/general/LicenseFormats
) - Correct ASF copyright and dates
- Correct distribution version #
- CHM format
- PDF format
- HTML format
- SDK CHM format
- Check that SDK CHM has:
- Correct ASF copyright and dates
- Correct distribution version #
- Correct title (ex: iBATIS.NET DataMapper 1.2.1)
- Correct HTML Help name (ex: DataMapper-1.2.1)
- Dev list email address for feedback
- Check that SDK CHM has:
NPetshop Distribution
| TODO!!! |
- ASF "LICENSE" text file (see http://apache.org/dev/apply-license.html
and http://wiki.apache.org/general/LicenseFormats
) - Proper ASF copyright on source files
- README or BUILD file explaining build process
Source Distribution
- ASF "LICENSE" text file (see http://apache.org/dev/apply-license.html
and http://wiki.apache.org/general/LicenseFormats
) - Proper ASF copyright on source files
- README or BUILD file explaining build process
- External-Bin/NET/1.1 directory
- Check that External-Bin/NET/1.1 includes:
- Castle.DynamicProxy assembly
- Castle.DynamicProxy license text file
- log4net assembly
- log4net license text file
- README explaining other assembly dependencies
- Check that External-Bin/NET/1.1 includes:
Resources
ASF Release Process
- Release Manager FAQ: http://wiki.apache.org/incubator/ReleaseManager

Mirroring
- Mirroring Step-By-Step (with OpenPGP, md5, creating directories, and linking): http://apache.org/dev/mirror-step-by-step.html

- Apache Mirroring Resources (Overview): http://www.apache.org/dev/mirrors.html

- Ant/Jakarta/XML Mirroring HOWTO (with stats): http://people.apache.org/~bodewig/mirror.html

- Forrest-based interactive mirror download page: http://forrest.apache.org/howto/howto-asf-mirror.html

Signing Releases and MD5 Sums
- Signing FAQ: http://people.apache.org/~henkp/sig/pgp-key-signing.txt

- MD5 FAQ: http://people.apache.org/~henkp/md5/doc.html

- Signing releases: http://wiki.apache.org/incubator/SigningReleases

- Check signatures: http://people.apache.org/~henkp/sig/

- Check distribution signatures and MD5 sums: http://people.apache.org/~henkp/cgi-bin/md5.cgi

- Check downloaded MD5 sums: http://people.apache.org/~henkp/cgi-bin/md5.cgi

Statistics
- Statistics: http://people.apache.org/~vgritsenko/faq.html

Other
- Upcoming ASF Certificate Authority: http://ca.apache.org/

