Differences between revisions 45 and 46
Revision 45 as of 2013-04-09 13:55:16
Size: 3528
Editor: RobertMuir
Comment:
Revision 46 as of 2013-06-18 16:39:29
Size: 0
Editor: ShalinMangar
Comment: This page is obsolete. See https://wiki.apache.org/lucene-java/ReleaseTodo
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from HowToRelease2
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.

TODO: merge this entire document with Lucene ReleaseTODO

<<TableOfContents>>

= Getting Started =
 1. [[HowToRelease_Tools|Tools]]
 1. [[HowToRelease_Suggestions|Suggestions]]
 1. [[HowToRelease_WebsiteChanges|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."
}}}

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



 1. 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):
  * '''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
}}}
 1. 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 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 [[HowToRelease_WebsiteChanges|Website Changes]] ||
 || ||Note: 3 +1 Lucene PMC votes are technically needed for a release, although Solr considers all votes equally (see [[http://www.apache.org/foundation/voting.html#ReleaseVotes|voting]]). ||
 Example from 3.1
 {{{
   >ant -Dversion=3.1.0 -Dgpg.key=FE045966 prepare-release
   //Inspect the artifacts
   >ant -Drc=rc3 -Dversion=3.1.0 -Dscp.user=gsingers copy-to-stage
 }}}
 
 1. 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."
}}}

 1. 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
}}}
  * [[PublishMavenArtifacts|Publish Maven Artifacts]]

 1. 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 [[http://www.apache.org/dyn/closer.cgi/lucene/solr/|mirrors]]. || || ||See the [[HowToRelease_SampleAnnouncement|Sample Announcement]] ||

= Related Resources =
 * http://www.apache.org/dev/#releases
 * http://www.apache.org/dev/#mirror
 * [[http://www.apache.org/dev/mirror-step-by-step.html?Step-By-Step|Step-By-Step Guide to Mirroring Releases]]