...
- 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
...