Publishing Apache Cassandra Releases
- You need permissions to deploy Cassandra artifacts to the Maven Central Repository.
- You need to have a GPG public key listed among those at: http://www.apache.org/dist/cassandra/KEYS
- Follow the environment configuration steps outlined at: Publishing Maven Artifacts. If you are lazy, the short version is that you need to have a minimal
~/.m2/settings.xmlfile which at least defines the following
- The GPG keyname is the
sechex code for the key, e.g. if you had
You would use
- Once you have things working with your ldap password in plaintext, it is highly recommended that you use Maven's encryption support to encrypt the password.
- The GPG keyname is the
Please read the Common Procedures for details of how to close, drop and release stanging repositories.
Making a release
To make a release:
- Make a full build from a real clean base, i.e. use the following sequence of commands:
That will build all the required artifacts and sign them with your GPG signature and publish them to a staging repository on repository.apache.org
- Login to repository.apache.org with your Apache LDAP username and password. Select Staging Repositories and find the open repository that you just deployed to and close it. Make note of the URL of the staging repository (it will look something like
https://repository.apache.org/content/repositories/<staging repository id>/
- Make a note of the NEWS.txt URL: https://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=blob_plain;f=NEWS.txt;hb=<sha1 ID> (shorten if desired)
- Make a note of the CHANGES.txt URL: https://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=blob_plain;f=CHANGES.txt;hb=<sha1 ID> (shorted if desired)
- Goto The Versions tab in JIRA. Select the Version being released, and Copy the Release Notes URL. It will look something like
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310865&version=#########. Shorten that url using Apache's URL shortening service.
- Call a release vote on the firstname.lastname@example.org mailing list. e.g.
If The Vote Passes
- Send a message declaring the vote closed, and summarizing the results.
- Mark the version as released in JIRA
- Login to people.apache.org and put the release artifacts into
- Login to repository.apache.org and release the staging repository.
- Remove the tentative tag; Create the permanent tag (preferably signed / annotated)
- Wait for the sync to http://www.apache.org/dist/cassandra before continuing
- Update the website.
- Publish the announce email to email@example.com
- Add the release to the PMC's next board report
- Remove Old Versions from ASF Distribution Directory. Login to people.apache.org and remove any superceded releases from
/www/www.apache.org/dist/cassandra(after confirming that they exist in
If the vote fails
- Login to repository.apache.org and drop the staging repository and start over again with Take N+1