You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2012/03/23 14:02:35 UTC

svn commit: r1304324 - in /wicket/common/site/trunk: _site/contribute/release.html contribute/release.md

Author: mgrigorov
Date: Fri Mar 23 13:02:35 2012
New Revision: 1304324

URL: http://svn.apache.org/viewvc?rev=1304324&view=rev
Log:
Update the release docs (use release-igor.sh to do all the tasks)


Modified:
    wicket/common/site/trunk/_site/contribute/release.html
    wicket/common/site/trunk/contribute/release.md

Modified: wicket/common/site/trunk/_site/contribute/release.html
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/_site/contribute/release.html?rev=1304324&r1=1304323&r2=1304324&view=diff
==============================================================================
--- wicket/common/site/trunk/_site/contribute/release.html (original)
+++ wicket/common/site/trunk/_site/contribute/release.html Fri Mar 23 13:02:35 2012
@@ -154,7 +154,7 @@
 			<h2 id='contents'>Contents</h2>
 
 <ul>
-<li><a href='#release-14'>Releasing Apache Wicket 1.4.x</a></li>
+<li><a href='#release-14'>Releasing Apache Wicket 1.4.x+</a></li>
 
 <li><a href='#release-13'>Releasing Apache Wicket 1.3.x</a></li>
 
@@ -165,7 +165,7 @@
 <li><a href='#additional'>Additional tasks</a></li>
 </ul>
 
-<h2 id='release-14'>Releasing Apache Wicket 1.4.x</h2>
+<h2 id='release-14'>Releasing Apache Wicket 1.4.x+</h2>
 
 <h3 id='building_the_release'>Building the Release</h3>
 
@@ -174,68 +174,30 @@
 <ul>
 <li>Ask the dev@ mailing list if there are any issues that still need to be in the release (looking at JIRA is a good start)</li>
 
-<li>Release the version in JIRA</li>
+<li><a href='https://issues.apache.org/jira/plugins/servlet/project-config/WICKET/versions'>Release</a> the version in JIRA</li>
 
-<li>Assuming there are none, and you are now in build mode, update the CHANGELOG-1.4 file (you can use JIRA for this list: go to &#8220;releases&#8221;, and under &#8220;unreleased&#8221;, next to your version, there&#8217;s a release notes link)</li>
+<li>Assuming there are none, and you are now in build mode, update the CHANGELOG-x.y file (you can use JIRA for this list: go to &#8220;releases&#8221;, and under &#8220;unreleased&#8221;, next to your version, there&#8217;s a release notes link)</li>
 </ul>
 
 <p>Make sure your <code>~/.m2/settings.xml</code> contains the following definition</p>
 <div class='highlight'><pre><code class='console'><span class='go'>&lt;?xml version=&quot;1.0&quot;?&gt;</span>
 <span class='go'>&lt;settings&gt;</span>
 <span class='go'>&lt;servers&gt;</span>
-<span class='go'>	&lt;server&gt;</span>
-<span class='go'>	    &lt;id&gt;apache.releases.https&lt;/id&gt;</span>
-<span class='go'>	    &lt;username&gt;$your_apache_username&lt;/username&gt;</span>
-<span class='go'>	    &lt;password&gt;$your_apache_password&lt;/password&gt;</span>
-<span class='go'>	&lt;/server&gt;</span>
+<span class='go'>        &lt;server&gt;</span>
+<span class='go'>            &lt;id&gt;apache.releases.https&lt;/id&gt;</span>
+<span class='go'>            &lt;username&gt;$your_apache_username&lt;/username&gt;</span>
+<span class='go'>            &lt;password&gt;$your_apache_password&lt;/password&gt;</span>
+<span class='go'>        &lt;/server&gt;</span>
 <span class='go'>&lt;/servers&gt;</span>
 <span class='go'>&lt;/settings&gt;</span>
 </code></pre>
 </div>
 <ul>
-<li>create a release branch to do your release work in (modifying poms, etc)</li>
+<li>Make sure you have a GnuPG key which is added to <a href='https://svn.apache.org/repos/asf/wicket/common/KEYS'>KEYS</a>. Read the header of KEYS file to see how to add it.</li>
 
-<li>then checkout that release branch and cd into it</li>
-</ul>
-<div class='highlight'><pre><code class='console'><span class='gp'>$</span> svn cp https://svn.apache.org/repos/asf/wicket/branches/wicket-1.4.x <span class='se'>\</span>
-<span class='go'>https://svn.apache.org/repos/asf/wicket/branches/wicket-1.4.13 \</span>
-<span class='go'>-m &quot;creating 1.4.13 release branch&quot;</span>
-<span class='go'>Committed revision 1027818.</span>
-<span class='gp'>$</span> <span class='nb'>cd</span> ..
-<span class='gp'>$</span> svn co https://svn.apache.org/repos/asf/wicket/branches/wicket-1.4.13
-<span class='go'>... lots of output ...</span>
-<span class='go'>Checked out revision 1027818.</span>
-<span class='gp'>$</span> <span class='nb'>cd </span>wicket-1.4.13
-</code></pre>
-</div>
-<ul>
-<li>Set correct version in the pom files using the <a href='http://mojo.codehaus.org/versions-maven-plugin'>maven-versions-plugin</a>:</li>
-</ul>
-<div class='highlight'><pre><code class='console'><span class='go'>mvn versions:set -DnewVersion=1.4.13</span>
-<span class='go'>... list of all changed artifacts changed.</span>
-<span class='go'>mvn versions:commit </span>
-<span class='go'>removes all of the pom.xml.versionsBackup files.</span>
-</code></pre>
-</div>
-<ul>
-<li>Call release.sh (still from the checkout out release branch code) <strong>NOTE</strong> If you get an error while generating javadocs like &#8221;<code>java.lang.ClassCastException: com.sun.tools.javadoc.ClassDocImpl</code>&#8221;, run a <code>mvn clean install -Dmaven.test.skip=true</code> followed by a <code>mvn javadoc:jar</code>, then re-run <code>release.sh</code>.</li>
+<li>Copy release-igor.sh script and modify any commands which don&#8217;t match your environment (e.g. mvn5)</li>
 
-<li>Login to the Apache Nexus Repository on http://repository.apache.org; See <a href='#nexus'>Releasing with Apache Nexus</a> below.</li>
-
-<li>Select <strong>Staging Repositories</strong> from the left hand side, then select the repository and click <strong>Close</strong>.</li>
-
-<li>Test that the distribution (examples, rat, etc) is accessible from the staging repository url.</li>
-
-<li>upload non-maven artifacts to pao:</li>
-</ul>
-<div class='highlight'><pre><code class='console'><span class='go'>export wicketversion=&lt;version&gt;</span>
-<span class='go'>svn export http://svn.apache.org/repos/asf/wicket/common/KEYS target/dist/KEYS</span>
-<span class='go'>ssh people.apache.org mkdir public_html/wicket-$wicketversion</span>
-<span class='go'>scp -r target/dist target/m2-repo people.apache.org:public_html/wicket-$wicketversion</span>
-</code></pre>
-</div>
-<ul>
-<li>Commit these modified pom files to the release branch.</li>
+<li>Run ./release-mine.sh and enter the required input (new version, gpg passphrase, etc.). The script will create the build branch in Git, will upload the artifacts at Apache Nexus Staging repository and will copy the assemblies to your people.apache.org account.</li>
 
 <li>Send vote message to dev@ mailing list. Include link to the closed repository for testing against.</li>
 
@@ -244,20 +206,20 @@
 <li>Copy release to apache mirrors</li>
 </ul>
 <div class='highlight'><pre><code class='console'><span class='go'>ssh people.apache.org</span>
-<span class='go'>mkdir /www/www.apache.org/dist/wicket/1.4.0</span>
-<span class='go'>mv ~/public_html/wicket-1.4.0/dist/* /www/www.apache.org/dist/wicket/1.4.0</span>
-<span class='go'>chown -R :wicket /www/www.apache.org/dist/wicket/1.4.0</span>
+<span class='go'>mkdir /www/www.apache.org/dist/wicket/x.y.z</span>
+<span class='go'>mv ~/public_html/wicket-x.y.z/dist/* /www/www.apache.org/dist/wicket/x.y.z</span>
+<span class='go'>chown -R :wicket /www/www.apache.org/dist/wicket/x.y.z</span>
 </code></pre>
 </div>
 <ul>
-<li>Login to repository.apache.org, select the closed repository and click <strong>Release</strong>. It will be accessible immediately through the apache release repo and then within 1-2 hours through maven central.</li>
+<li>Login to <a href='https://repository.apache.org'>Apache Nexus Staging repo</a>, select the closed repository and click <strong>Release</strong>. It will be accessible immediately through the apache release repo and then within 1-2 hours through maven central.</li>
 
 <li>If the release is voted down you can <strong>Drop</strong> the staged release and then restage later after incorporating the necessary changes.</li>
 
 <li>Tag the release in Git:</li>
 </ul>
-<div class='highlight'><pre><code class='console'><span class='go'>git checkout build/wicket-1.5.4</span>
-<span class='go'>git tag release/wicket-1.5.4</span>
+<div class='highlight'><pre><code class='console'><span class='go'>git checkout build/wicket-x.y.z</span>
+<span class='go'>git tag release/wicket-x.y.z</span>
 <span class='go'>git push --tags</span>
 </code></pre>
 </div>
@@ -269,12 +231,14 @@
 <li>Announce (see <a href='#announcing'>below</a>)</li>
 </ul>
 
-<h2 id='nexus'>Staging Releases using the Apache Nexus Repository</h2>
+<h2 id='nexus'>Staging Releases using the Apache Nexus Staging Repository</h2>
 
-<p>The key to stage and manage repositories on https://repository.apache.org are your Apache Commiter credentials.</p>
+<p>The key to stage and manage repositories on <a href='https://repository.apache.org'>Apache Nexus Staging repo</a> are your Apache Commiter credentials.</p>
 
 <h3 id='staging_artifacts'>Staging Artifacts</h3>
 
+<p><strong>Note</strong>: The steps below are part of release-igor.sh script!</p>
+
 <p>When you run <strong>mvn -P release deploy</strong> the generated artifacts will be uploaded into a Nexus staging repository.</p>
 
 <p>Maven sends a username/password when attempting to upload the artifacts.</p>
@@ -285,11 +249,11 @@
 <div class='highlight'><pre><code class='console'><span class='go'>&lt;?xml version=&quot;1.0&quot;?&gt;</span>
 <span class='go'>&lt;settings&gt;</span>
 <span class='go'>&lt;servers&gt;</span>
-<span class='go'>	&lt;server&gt;</span>
-<span class='go'>	    &lt;id&gt;apache.releases.https&lt;/id&gt;</span>
-<span class='go'>	    &lt;username&gt;$username&lt;/username&gt;</span>
-<span class='go'>	    &lt;password&gt;$password&lt;/password&gt;</span>
-<span class='go'>	&lt;/server&gt;</span>
+<span class='go'>        &lt;server&gt;</span>
+<span class='go'>            &lt;id&gt;apache.releases.https&lt;/id&gt;</span>
+<span class='go'>            &lt;username&gt;$username&lt;/username&gt;</span>
+<span class='go'>            &lt;password&gt;$password&lt;/password&gt;</span>
+<span class='go'>        &lt;/server&gt;</span>
 <span class='go'>&lt;/servers&gt;</span>
 <span class='go'>&lt;/settings&gt;</span>
 </code></pre>
@@ -298,7 +262,7 @@
 
 <h3 id='managing_staged_artifacts'>Managing Staged Artifacts</h3>
 
-<p>By logging in with your Apache committer credentials to https://repository.apache.org you can access the management interface for the staged artifacts.</p>
+<p>By logging in with your Apache committer credentials to <a href='https://repository.apache.org'>Apache Nexus Staging repo</a> you can access the management interface for the staged artifacts.</p>
 
 <p>The interface will allow you to:</p>
 

Modified: wicket/common/site/trunk/contribute/release.md
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/contribute/release.md?rev=1304324&r1=1304323&r2=1304324&view=diff
==============================================================================
--- wicket/common/site/trunk/contribute/release.md (original)
+++ wicket/common/site/trunk/contribute/release.md Fri Mar 23 13:02:35 2012
@@ -5,21 +5,21 @@ title: Build a release
 
 ## Contents ##
 
-* [Releasing Apache Wicket 1.4.x](#release-14)
+* [Releasing Apache Wicket 1.4.x+](#release-14)
 * [Releasing Apache Wicket 1.3.x](#release-13)
 * [Staging Releases using the Apache Nexus Repository](#nexus)
 * [Announcing the release](#announcing)
 * [Additional tasks](#additional)
 
-## Releasing Apache Wicket 1.4.x ## {#release-14}
+## Releasing Apache Wicket 1.4.x+ ## {#release-14}
 
 ### Building the Release ###
 
 #### Preparing #####
 
 * Ask the dev@ mailing list if there are any issues that still need to be in the release (looking at JIRA is a good start)
-* Release the version in JIRA
-* Assuming there are none, and you are now in build mode, update the CHANGELOG-1.4 file 
+* [Release](https://issues.apache.org/jira/plugins/servlet/project-config/WICKET/versions) the version in JIRA
+* Assuming there are none, and you are now in build mode, update the CHANGELOG-x.y file
 (you can use JIRA for this list: go to "releases", and under "unreleased", next to your version, there's a release notes link)
 
 Make sure your ```~/.m2/settings.xml``` contains the following definition
@@ -28,77 +28,53 @@ Make sure your ```~/.m2/settings.xml``` 
 <?xml version="1.0"?>
 <settings>
 <servers>
-	<server>
-	    <id>apache.releases.https</id>
-	    <username>$your_apache_username</username>
-	    <password>$your_apache_password</password>
-	</server>
+        <server>
+            <id>apache.releases.https</id>
+            <username>$your_apache_username</username>
+            <password>$your_apache_password</password>
+        </server>
 </servers>
 </settings>
 {% endhighlight %}
 
-* create a release branch to do your release work in (modifying poms, etc)
-* then checkout that release branch and cd into it
-{% highlight console %}
-$ svn cp https://svn.apache.org/repos/asf/wicket/branches/wicket-1.4.x \
-https://svn.apache.org/repos/asf/wicket/branches/wicket-1.4.13 \
--m "creating 1.4.13 release branch"
-Committed revision 1027818.
-$ cd ..
-$ svn co https://svn.apache.org/repos/asf/wicket/branches/wicket-1.4.13
-... lots of output ...
-Checked out revision 1027818.
-$ cd wicket-1.4.13
-{% endhighlight %}
-* Set correct version in the pom files using the [maven-versions-plugin](http://mojo.codehaus.org/versions-maven-plugin):
-{% highlight console %}
-mvn versions:set -DnewVersion=1.4.13
-... list of all changed artifacts changed.
-mvn versions:commit 
-removes all of the pom.xml.versionsBackup files.
-{% endhighlight %}
-* Call release.sh (still from the checkout out release branch code) **NOTE** If you get an error while generating javadocs like "`java.lang.ClassCastException: com.sun.tools.javadoc.ClassDocImpl`", run a `mvn clean install -Dmaven.test.skip=true` followed by a `mvn javadoc:jar`, then re-run `release.sh`.
-* Login to the Apache Nexus Repository on http://repository.apache.org; See [Releasing with Apache Nexus](#nexus) below.  
-* Select **Staging Repositories** from the left hand side, then select the repository and click **Close**.
-* Test that the distribution (examples, rat, etc) is accessible from the staging repository url.
-* upload non-maven artifacts to pao:
-{% highlight console %}
-export wicketversion=<version>
-svn export http://svn.apache.org/repos/asf/wicket/common/KEYS target/dist/KEYS
-ssh people.apache.org mkdir public_html/wicket-$wicketversion
-scp -r target/dist target/m2-repo people.apache.org:public_html/wicket-$wicketversion
-{% endhighlight %}
-* Commit these modified pom files to the release branch.
+* Make sure you have a GnuPG key which is added to [KEYS](https://svn.apache.org/repos/asf/wicket/common/KEYS).
+Read the header of KEYS file to see how to add it.
+* Copy release-igor.sh script and modify any commands which don't match your environment (e.g. mvn5)
+* Run ./release-mine.sh and enter the required input (new version, gpg passphrase, etc.). The script
+will create the build branch in Git, will upload the artifacts at Apache Nexus Staging repository and
+will copy the assemblies to your people.apache.org account.
 * Send vote message to dev@ mailing list.  Include link to the closed repository for testing against.
 * Wait requisite 72 hours for the vote to pass (we hope)
 * Copy release to apache mirrors
 {% highlight console %}
 ssh people.apache.org
-mkdir /www/www.apache.org/dist/wicket/1.4.0
-mv ~/public_html/wicket-1.4.0/dist/* /www/www.apache.org/dist/wicket/1.4.0
-chown -R :wicket /www/www.apache.org/dist/wicket/1.4.0
+mkdir /www/www.apache.org/dist/wicket/x.y.z
+mv ~/public_html/wicket-x.y.z/dist/* /www/www.apache.org/dist/wicket/x.y.z
+chown -R :wicket /www/www.apache.org/dist/wicket/x.y.z
 {% endhighlight %}
-* Login to repository.apache.org, select the closed repository and click **Release**.  It will be accessible immediately through the apache release repo and then within 1-2 hours through maven central. 
+* Login to [Apache Nexus Staging repo](https://repository.apache.org), select the closed repository and click **Release**.  It will be accessible immediately through the apache release repo and then within 1-2 hours through maven central.
 * If the release is voted down you can **Drop** the staged release and then restage later after incorporating the necessary changes.
 * Tag the release in Git:
 {% highlight console %}
-git checkout build/wicket-1.5.4
-git tag release/wicket-1.5.4
+git checkout build/wicket-x.y.z
+git tag release/wicket-x.y.z
 git push --tags
 {% endhighlight %}
 * Wait until repo1.maven.org has picked up the release artifacts.
 * Wait 24 hours until mirrors picked up release artifacts
 * Announce (see [below](#announcing))
 
-## Staging Releases using the Apache Nexus Repository ## {#nexus}
+## Staging Releases using the Apache Nexus Staging Repository ## {#nexus}
 
-The key to stage and manage repositories on https://repository.apache.org are your Apache Commiter credentials.
+The key to stage and manage repositories on [Apache Nexus Staging repo](https://repository.apache.org) are your Apache Commiter credentials.
 
 ### Staging Artifacts ###
 
+**Note**: The steps below are part of release-igor.sh script!
+
 When you run **mvn -P release deploy** the generated artifacts will be uploaded into a Nexus staging repository.
 
-Maven sends a username/password when attempting to upload the artifacts.  
+Maven sends a username/password when attempting to upload the artifacts.
 
 The ```<id>``` of the staging repository is: **apache.releases.https**.
 
@@ -108,11 +84,11 @@ Place a ```<server>``` definition in you
 <?xml version="1.0"?>
 <settings>
 <servers>
-	<server>
-	    <id>apache.releases.https</id>
-	    <username>$username</username>
-	    <password>$password</password>
-	</server>
+        <server>
+            <id>apache.releases.https</id>
+            <username>$username</username>
+            <password>$password</password>
+        </server>
 </servers>
 </settings>
 {% endhighlight %}
@@ -121,7 +97,7 @@ This works if you can deploy artifacts i
 
 ### Managing Staged Artifacts ###
 
-By logging in with your Apache committer credentials to https://repository.apache.org you can access the management interface for the staged artifacts.
+By logging in with your Apache committer credentials to [Apache Nexus Staging repo](https://repository.apache.org) you can access the management interface for the staged artifacts.
 
 The interface will allow you to:
 * View the staging repositories.
@@ -150,7 +126,7 @@ typically just leave the previous releas
 * Write an announcement in the \_posts directory
 * Restart jekyll to regenerate the pages: it will automatically generate the
   correct links in the navigation menu, quickstart and downloads page. It will
-  update the doap.rdf file, atom.xml rss feed and index.html file so that it 
+  update the doap.rdf file, atom.xml rss feed and index.html file so that it
   contains your announcement.
 * Send email to: users@wicket.apache.org, dev@wicket.apache.org, announce@wicket.apache.org, announce@apache.org
 * Misc. websites like javalobby, serverside, onjava etc.