Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: cleanup of language, so that it doesn't always refer to trunk for releases. Also noted possibly using mvn release:branch to create branches in future.

...

From a clean, up-to-date copy of trunk/branch, run the following command:

...

Note
titleWatch for conflicts when updating HTML Documentation

It's often easier to completely remove all current HTML content before committing the updated HTML content. Because of the HTML directory structure exported by Confluence, it can be very difficult to determine which files need removing (especially old attachments). So, you may want to completely remove the old HTML directory, before committing the updated content. An example follows:

  1. Delete old HTML docs: e.g. svn delete http://scm.dspace.org/svn/repo/dspace/trunk/dspace/docs/html (Or delete from branch, as appropriate)
  2. Update your checked-out copy of Trunk/Branch: svn up
  3. Wiki Markup
    Locally, recreate the {{\[dspace-source\]/dspace/docs/html/}} in your checked out copy of Trunk/Branch
  4. Wiki Markup
    Copy new HTML docs to {{\[dspace-source\]/dspace/docs/html/}}, so that the {{index.html}} file is at {{html/index.html}}
  5. Commit new docs back to SVN

...

Code Block
svn co https://scm.dspace.org/svn/repo/dspace/trunk dspace-release

Do a Dry Run

Wiki Markup
This step is not required, but performs a useful sanity check without committing any changes.  From your clean, up-to-date copy of trunk/branch, run the following command (from {{\[dspace-src\]}}):

Code Block
mvn release:prepare -DdryRun=true

...

This step will set the version declared in the project's pom.xml files, commit the changes to trunk/branch, tag the release, and finally, check in another the trunk/branch change that increments the next development version (e.g. x.y.z-SNAPSHOT) in the pom.xml files.

...

  • Add the new contributors to the list: DSpaceContributors
  • Coordinate Announcements with DuraSpace Staff:
    • Announcement on dspace.org, duraspace.org, twitter
    • Ensure that the Latest Release page on dspace.org is updated.
      • Plus, ask dspace.org admins to upload latest documentation in PDF/HTML format
    • Announce on all DSpace mailing lists
    • Link announcement on Home of DSpace Wiki, change any version numbers listed on that page.
  • Update Wiki pages, particularly these pages which refer to the Current and Next Releases:
  • For major releases, create a new branch in SVN for any upcoming sub-minor releases:
    • E.g., after 1.6.0 release, we created a 1.6.x branch for the subsequent 1.6.1 and 1.6.2 releases
    • To automatically create a branch, you may be able to use the release:branch command (NOTE: untested, but it should work! once we test it out, this may be the best practice way of creating a branch).
    • To manually create a branch, run a run a command similar to:
      Code Block
      svn copy http://scm.dspace.org/svn/repo/dspace/trunk \
               http://scm.dspace.org/svn/repo/dspace/branches/dspace-1_6_x \
            -m "Creating a branch for 1.6.x bug-fix releases."
      • Then, go back to your Trunk checkout, and make sure to update it's version numbers in the pom.xml files by running the following:
        Code Block
        mvn release:update-versions
        (Remember to enter in the next appropriate major version number. E.g. After releasing 1.7.0, Trunk should be updated to "1.8.0-SNAPSHOT", while the new 1_7_x branch should be at "1.7.1-SNAPSHOT")
        • NOTE: the update-versions command doesn't always work perfectly. You will want to try a complete rebuild of DSpace before committing anything, as it sometimes misses updating a few version numbers.
      • You'll also need to ensure that all version numbers and the <scm> section is appropriate in the pom.xml files of your new Branch. Remember, the <scm> configurations should point at the branch, rather than back at Trunk.
  • For major releases, make sure to create a new DuraSpace Bamboo Project to auto-build the new branch you created in SVN.
    • Usually, it's easiest to just 'clone' the existing Trunk project, rather than starting from scratch.
    • You'll want to name it something similar to "17BRANCH" (for 1.7.x branch).
  • Updates to JIRA:
    • Move any uncompleted issues to the next DSpace version tag in JIRA.
    • Ask a JIRA Administrator to close out the release in JIRA (this will ensure no new issues can be added to that release).

...