Versions Compared

Key

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

...

  1. (tick) The plan is to sync Geronimo Eclipse Plugin (GEP) releases with those of the Geronimo server. The goal is to release GEP as soon as possible after the release of the corresponding server.

    Note

    Note: These notes are written for release 2.2. Change the version number accordingly for your release!


  2. (tick) Pick up JIRA list of fixed bugs and new features from Release Notes and defer unresolved JIRAs
  3. (tick) Update the release notes. They are the file PLUGIN_RELEASE-NOTES-2.2.txt in trunk. Copy the JIRA list from Step 2 into it.

  4. (tick) (https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/branches/2.2) Copy the trunk to branches using the following command:
    No Format
    svn copy SRC-URL DEST-URL -m "Reason for this commit"
    
    For example:
    No Format
    svn copy https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/trunk
             https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/branches/2.2 -m "Prepare for GEP 2.2 release"
    
  5. (tick) Checkout or update this branches tree on your machine. 
  6. (tick) Update version in trunk. (Eg. from 2.2.0 to 2.2.1)

  7. (tick) With tool Apache RAT, scan all the source code to make sure Apache license headers have been added into neccessarily. The header is neccessary for .java, .xsd,.xml,.html and .properties, which contain functional code or configuration information.
  8. (tick) Update the <scm> URLs in the pom.xml to point to the final URL in tags. For example:
    Code Block
    xml
    xml
    <scm>
         <connection>scm:svn:https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/tags/2.2/</connection>
         <developerConnection>scm:svn:https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/tags/2.2/</developerConnection>
         <url>https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/tags/2.2/</url>
    </scm>
    
  9. (tick) Build the new branches tree that will soon be released

  10. (tick) Build a publicly accessible staging site so that the reviewers can download the plugins from it. An example staging site is http://people.apache.org/~mcconne/releases/2.2/RC1/staging_site/
  11. (tick) Copy the deployable and updatesite zip files to the staging site. For example http://people.apache.org/~mcconne/releases/2.2/RC1/staging_site/
  12. (tick) Package the source code in the branch just created. For example package branches/2.2.0 into geronimo-eclipse-plugin-2.2.0-source.tar.gz and geronimo-eclipse-plugin-2.2.0-source.zip.

  13. (tick) Create the update site by extracting the updatesite zip to the staging site, for example http://people.apache.org/~mcconne/releases/2.1.2/RC2/staging_site/updates. Also include:
    • (tick) Instructions for using the staging site
  14. (tick) Ensure that the file(s) you copy have the proper checksum files as well (i.e., .asc, .md5, .sha) using these gpg commands:
    No Format
    gpg --print-md MD5 [fileName] > [fileName].md5
    gpg --print-md SHA1 [fileName] > [fileName].sha
    gpg --armor --output [fileName].asc --detach-sig [fileName]
    
    NOTE: To generate keys, you need to notice the rules here http://www.apache.org/dev/openpgp.htmland http://www.apache.org/dev/key-transition.html
  15. (tick) Similarly, ensure that your GPG public key is in the /www/www.apache.org/dist/geronimo/KEYS file before publishing anything to the distribution location
  16. (tick) Put the staging site up for a vote. In the vote notice, please include:
    • The precise names and versions being voted on (e.g. geronimo-eclipse-plugin-2.2-deployable.zip and geronimo-eclipse-plugin-2.2-updatesite.zip)
      Tip
      titleTips

      1. Be certain to use the Release Candidate (RC) acronym in the name as it will not likely pass on the first vote
      2. Be certain to use the same version numbers as the Geronimo Server (e.g., 2.2)

    • The svn urls to the current source and where the tag will be created
    • The svn revision levels being voted on along with pointers to the source and build output files
    • URL of the staging site (with instructions on how to use it)
    • Eclipse requirements if any (with instructions on how to download them and from where)

  17. (tick) Test the staging site by downloading the adapter from it (using the same instructions in previous step) 
  18. (tick) Create the How to install GEP v2.2 wiki page. Be sure this includes the pre-reqs. The idea is to have a single page with this release-specific information. In the vote note below, refer to this page, with overrides for the staging site URL. The idea here is to create the install page before hand, and use it for the voting, so that folks will review the doc we'll go live with when the vote passes. There is a How to install GEP page, with children of the various versions. These are for folks who may want to install old versions. When the vote passes, move all it's children to the v2.2 page, then rename the How to install GEP page to the v2.1.1 page. Make it a child of the v2.1.2 page. Then, rename the v2.1.2 page to the generic How to install GEP page.

  19. Wiki Markup
    (/) Make sure to start both a *\[VOTE\]* and a *\[DISCUSS\]* thread on the Geronimo dev list
    Tip
    titleTip

    Be certain to get enough binding votes according to the Apache Foundation requirements, which in general stipulates 3 PMC +1 votes (see http://www.apache.org/foundation/voting.html#ReleaseVotes for more details)

  20. (tick) After the vote has been approved:
    • Wiki Markup
      (/) Publish the results on a *\[RESULTS\]* reply to the original *\[VOTE\]* thread on the Geronimo dev list
    • (tick) Publish the staging site, including the deployable.zip and updatesite.zip files, and the release notes to the Geronimo Eclipse distribution location on people.apache.org here:
      No Format
      /www/www.apache.org/dist/geronimo/eclipse
      
    • (tick) Ensure that the version subdirectory is used (e.g., 2.1.2)
    • (tick) Ensure that the file(s) you copy to the distribution directory have 0775 dir permission and a 0644 file permission set on them
    • (tick) Ensure that the file(s) you copy to the distribution directory have the RCx acronym removed from the filename

  21. (tick) Ensure that the corresponding Geronimo Eclipse distribution website is updated automatically and properly with the deployable.zip file and the updatesite.zip file

  22. (tick) Update the Geronimo Eclipse Update Site with the contents of the updatesite.zip:
    1. No Format
      
      1. /www/www.apache.org/dist/geronimo/eclipse/updates/features
      2. /www/www.apache.org/dist/geronimo/eclipse/updates/plugins
      3. /www/www.apache.org/dist/geronimo/eclipse/updates/site.xml
      
      Warning
      titleWarning

      Never delete old releases from the update site - always append to it !! Likewise, do not create a new update site as this will break everyone who has this current site configured, and WTP which uses the update site for the downloadable server adapter support.

      Warning
      titleWarning

      If you use FTP to transfer the files to the Geronimo Eclipse Update Sitemake sure to transfer everything in binary mode. Otherwise, the checksum files may not transfer correctly (especially if they are transferred in text mode).

    2. (tick) Ensure that the file(s) you copy to the update site directories have 0755 dir permission and a 0644 file permisison set on them

...

  1. (tick) Ensure that corresponding Geronimo Eclipse Update Site website (http://apache.org/dist/geronimo/eclipse/updates/) is updated automatically in the next 24 hours with the contents of the updatesite.zip file.

  2. (tick) Move the branches tree to tags using the following command:
    No Format
    svn move SRC-URL DEST-URL -m "Reason for this commit".
    
    For example:
    No Format
    svn move https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/branches/2.2
             https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/tags/2.2 -m "Tagging GEP 2.2"
    
    • Follow what the server does. A maintenance branch for the next dot release (2.1.3) may be created later by copying the 2.1.2 tag to a 2.1.3 branch.
  3. (tick) Merge changes from tags into trunk to ensure they are in sync (except for the assembly pom.xml described above)

  4. (tick) update the How to Install GEP page(s) as described above.

  5. (tick) Update version number in trunk (e.g., 2.1.2 -> 2.1.3)
    • Be careful / give some thought to the next version number. ie, 2.2 vs. 2.1.3. I think the best choice is to follow the server.

  6. (tick) Update Geronimo version number in trunk (e.g., 2.1.2 -> 2.1.3-SNAPSHOT)

  7. (tick) Rename PLUGIN_RELEASE-NOTES-2.1.2.txt to PLUGIN_RELEASE-NOTES-2.1.3.txt.

  8. (tick) Update the Apache Geronimo Development Tools Subproject web site. Please include:
    • Updated Release Notes
    • All Eclipse and WTP prerequisites and download instructions
    • Links to recent, pertinent, and relevant presentations (e.g., Shiva's, EclipseWorld, look for others, etc)

  9. (tick) Administer the GERONIMODEVTOOLS JIRA project to update the released and unreleased versions

  10. (tick) Update the Geronimo Home Page with a News item that we have an updated Geronimo Eclipse Plugin available

  11. (tick) Final step is to update the Geronimo Release Roadmaps with the release date.