Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Note
titleThis Document is Out of Date

We expect the release process to change as part of the 3.6 release, at which time the steps outlined here will be updated accordingly.

This document is intended to be used and kept up to date by the Fedora Release Manager.  It details the steps necessary to perform an official release of Fedora.

...

The previous release version (snapshot previous documentation) is identified as A.B, replace this with the previous release (eg 3.6).

Table of Contents

Before Release Day

Verify release privileges

...

  • You have an account with commit, release, and shell access for the fedora-commons project on sourceforge.net. As a committer, you should already have this level of access.
  • You have an account with manager privileges on the Fedora Commons Plone wiki.
  • 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:
Code Block

<settings>
  ...
  <servers>
    ...
    <server>
      <id>sonatype-nexus-snapshots</id>
      <username>your-jira-id</username>
      <password>your-jira-pwd</password>
    </server>
    <server>
      <id>sonatype-nexus-staging</id>
      <username>your-jira-id</username>
      <password>your-jira-pwd</password>
    </server>
  </servers>
  ...
</settings>

...

  • Which platform/database 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, DirIngest) will be run, and by whom
  • Instructions on how testers will report on test results
  • If releasing on JDK 8, ensure that the javadoc:javadoc mvn target runs before beginning the release process (it has more stringent validations in JDK 8)- if necessary, use the Java endorsed standards override mechanism to ensure the JAXB implementation version is at least 2.2.11. This is so that the WSDL and XSD generated classes will produce valid javadoc output.

Create release branch and

...

begin final test phase

Update online resources

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.

...

  • you have a working PGP installation with your code signing key as the default keythe version number has been increased and tagged in git

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

git checkout v{{*X.Y}}
mvn release:prepare -DdryRun -DreleaseVersion=X.X.X -DdevelopmentVersion=X.X.Y-SNAPSHOT
mvn release:clean && mvn release:prepare -DreleaseVersion=X.X.X -DdevelopmentVersion=X.X.Y-SNAPSHOT
mvn release:perform

Login to to https://oss.sonatype.comorg

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.

...

The artifacts to be uploaded to Sourceforge, as well as PGP signatures, SHA1 checksums, file sizes, etc., can be found at the central Maven repository search site: http://search.maven.org/#search%7Cga%7C1%7Corg.fcrepo.The Fedora Messaging client can be found at http://search.maven.org/#search%7Cga%7C1%7Cfedora-client-messaging.

Files sent to sourceforge and linked directly from the documentation's Download page should include:

Filename

Description

fcrepo-installer-X.Y.jar

The fedora-repository installer jar

fcrepo-server-rmi-journal-rcvrecv-X.Y.zip

The fedora-journaling-rmi-reciever receiver distribution

fedora-client-messaging-x.y-fedora-withmessaging-dependenciesjar.jar

The fedora messaging client distribution, from MediaShelf

For each file, also add a *.asc file, containing the PGP signature for the file, as created by Maven and stored in the central repository.

...

Current Fedora Repository Documentation wiki: https://wiki.duraspace.org/display/FEDORA36FEDORA38

At the very minimum, update the following:

...

If this is a maintenance point release, create separate child release note pages for each release covered by the documentation (see https://wiki.duraspace.org/display/FEDORA36FEDORA38/Release+Notes for an example).
Otherwise, post the release notes in the Release Notes page (see https://wiki.duraspace.org/display/FEDORA35/Release+Notes for an example).

...

Make sure the license and copyright information is up-to-date with this release.

Update the Fedora Commons wiki

Fedora Commons Wiki (Plone): http://www.fedora-commons.org/
Sitemap: http://www.fedora-commons.org/sitemap

...

  • navigate to Previous Releases folder
  • select green view tab
  • select display drop-down menu
  • select change content item as default view...

...

  • select Manage Portlets
  • select the Current Releases portlet.
  • update the link to the installer: http://downloads.sourceforge.net/fedora-commons/fcrepo-installer-X.Y.jar
  • update the link to the source: https://github.com/fcrepo/fcrepo/zipball/vX.Y

...

release

...

In the Software section:

  • Make sure the default view for the Fedora Repository reflects the new release
  • Update the previous version to point to the archived documentation
  • Make sure the license information is up-to-date with the latest release

On the homepage:

...

.

Announce release

Let Carol Minton Morris (clt6 at cornell dot edu) know that the release is complete and can be announced.

...