This page is to help a Solr committer create a new release. It does not reflect official release policy - many of the items may be optional, or may be modified as necessary.

Getting Started

  1. Tools

  2. Suggestions

  3. Website Changes

Release Guidlines

  1. If this is the first release in a series (i.e. release X.Y.0), then create a branch for the series:
    svn copy https://svn.apache.org/repos/asf/lucene/dev/trunk \
      https://svn.apache.org/repos/asf/lucene/dev/branches/branch-X.Y -m "Starting Solr X.Y branch."
  2. Check out the branch:
    svn co https://svn.apache.org/repos/asf/lucene/dev/branches/branch-X.Y

    {i}

    Note: at the moment releases need to be done on a unix box or in a cygwin environment with unix linefeeds, because fixcrlf is only done on the sources in the zip artifact.

  3. Update the version numbers in common-build.xml on the branch (X.Y.M is the current release and X.Y.N is the next release):

    • specversion should be set to X.Y.M.${dateversion}.

    • version should be set to X.Y.N-SNAPSHOT.

    • the luceneMatchVersion param in example solrconfig.xml files should be up to date, to see a list run:

      solr/example$ find . -name solrconfig.xml
  4. Produce one or more release candidates and upload the artifacts to your public staging space on people.a.o and send an email to dev@apache.org calling the vote. Be sure to inspect the ant targets for available options, the example below is just that, an example.

    ant [-Dgpg.key=HEXCODE] [-Dgpg.passphrase="your passphrase"] -Dversion=X.Y.M -Dspecversion=X.Y.M prepare-release  //[] are optional depending on your setup
    Inspect the artifacts and if they are satisfactory run:
    ant -Dversion=X.Y.M copy-to-stage

    {i}

    Reminder: you want to update the website in the release before building the final artifacts - see Website Changes

    Note: 3 +1 Lucene PMC votes are technically needed for a release, although Solr considers all votes equally (see voting).

    Example from 3.1
       >ant -Dversion=3.1.0 -Dspecversion=3.1.0 -Dgpg.key=FE045966 prepare-release
       //Inspect the artifacts
       >ant -Drc=rc3 -Dversion=3.1.0 -Dscp.user=gsingers copy-to-stage
  5. Tag the release:
    svn copy https://svn.apache.org/repos/asf/lucene/dev/branches/branch-X.Y \
       https://svn.apache.org/repos/asf/lucene/dev/tags/release-X.Y.M -m "Solr X.Y.M release."
  6. Distribute the release:
    • Copy release files to the distribution directory.
    scp -p package/* people.apache.org:/www/www.apache.org/dist/lucene/solr/X.Y
    scp -p KEYS people.apache.org:/www/www.apache.org/dist/lucene/solr/
  7. Send announcements to the announce@apache.org , solr-user@lucene.apache.org , dev@lucene.apache.org , and general@lucene.apache.org lucene mailing lists. || {i} ||Keep in mind that it can take up to 24 hours for the release artifacts to propagate across Apache's mirrors. || || ||See the Sample Announcement ||

Related Resources

HowToRelease (last edited 2012-04-10 00:56:04 by SteveRowe)