Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • You have an account with commit , release, and shell access for the fedora -commons project on sourceforgegithub. net. As a committer, you should already have this level of access.
  • You have an account with manager privileges on the Fedora Commons Plone wikiRepository Drupal site.
  • You have an account with edit privileges on the duraspace.org Confluence wiki.
  • You have an oss.sonatype.com account and have requested to be given permission to publish to the org.fcrepo groupId by adding a comment to the Fedora Sonatype Hosting Ticket
  • Your maven settings.xml includes the following:

...

It should include:

  • Which platform/database configuration combinations will be tested
  • Which automated tests will be run, and by whom
  • Which manual tests will be run, and by whom
  • Which service compatibility tests (GSearch, OAIProvider, SWORD-Fedora, DirIngestexternal search, external triplestore) will be run, and by whom
  • Instructions on how testers will report on test results

...

If any online resources have been modified or added to during the release, these must be updated. Particularly XSD schema files served at http://www.fedora-commons.org/definitions/1/0/ must be verified.

Release Day

Update the KEYS file

...

Run the following commands to generate and upload all built artifacts to the Sonatype staging repository
(the "DreleaseVersion and -DdevelopmentVersion" arguments are optional-you'll just be prompted for them otherwise):

No Format
mvn release:clean
mvn release:prepare -DdryRun -DreleaseVersion=X.X.X -DdevelopmentVersion=X.X.Y-SNAPSHOT -DautoVersionSubmodules
mvn release:clean && mvn release:prepare -DreleaseVersion=X.X.X -DdevelopmentVersion=X.X.Y-SNAPSHOT -DautoVersionSubmodules -DpushChanges=false

Review the staged commits in GitHub for correctness

No Format
git push origin --tags

Download the release source and build locally

  • Remove/or move local Maven repository
No Format
mv ~/.m2/repository ~/.m2/repository-yyyy-mm-dd

Merge and commit to GitHub

No Format
git checkout -b <release-branch>
git push origin <release-branch>:master

Deploy to Sonatype

No Format
mvn release:perform -DperformRelease -Dgoals=deploy

Login to https://oss.sonatype.org

Find the staging repository, check that it looks good, and "Close" it. Then "Release" it. This will publish the artifacts to the Sonatype releases repository and start the process of syncing them with central. The artifacts may take several hours to reach central. When finished, they'll be available at http://repo1.maven.org/maven2/org/fcrepo.

Build GitHub documentation site

No Format
git checkout -b <site-release>
git cherry-pick <commit [maven-release-plugin] prepare release ...>
 
mvn site-deploy -DskipTests
** Resume from a given module, if necessary
mvn site-deploy -DskipTests -rf <module>

 

Upload selected artifacts to Sourceforge and verify the distribution

...