You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by bu...@apache.org on 2015/01/06 20:20:37 UTC

svn commit: r935297 - in /websites/production/tapestry/content: cache/main.pageCache release-process.html

Author: buildbot
Date: Tue Jan  6 19:20:37 2015
New Revision: 935297

Log:
Production update by buildbot for tapestry

Modified:
    websites/production/tapestry/content/cache/main.pageCache
    websites/production/tapestry/content/release-process.html

Modified: websites/production/tapestry/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.

Modified: websites/production/tapestry/content/release-process.html
==============================================================================
--- websites/production/tapestry/content/release-process.html (original)
+++ websites/production/tapestry/content/release-process.html Tue Jan  6 19:20:37 2015
@@ -100,7 +100,7 @@
                     <span class="icon icon-page" title="Page">Page:</span>            </div>
 
             <div class="details">
-                            <a shape="rect" href="confluence-site-setup.html">Confluence Site Setup</a>
+                            <a shape="rect" href="building-tapestry-from-source.html">Building Tapestry from Source</a>
                     
                 
                             </div>
@@ -109,7 +109,7 @@
                     <span class="icon icon-page" title="Page">Page:</span>            </div>
 
             <div class="details">
-                            <a shape="rect" href="release-process.html">Release Process</a>
+                            <a shape="rect" href="confluence-site-setup.html">Confluence Site Setup</a>
                     
                 
                             </div>
@@ -118,40 +118,56 @@
                     <span class="icon icon-page" title="Page">Page:</span>            </div>
 
             <div class="details">
-                            <a shape="rect" href="building-tapestry-from-source.html">Building Tapestry from Source</a>
+                            <a shape="rect" href="release-process.html">Release Process</a>
                     
                 
                             </div>
         </li></ul>
-</div><p>Before creating a release ensure:</p><ul><li>You have setup your own public OpenGPG key signature for signing the distribution</li><li>You can login to <a shape="rect" class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a></li></ul><h2 id="ReleaseProcess-GITandDeploymentCredentials">GIT and Deployment Credentials</h2><p>To successfully create a release, you will need to update your Gradle settings with the credentials for your git user and the deployment user. These credentials are stored in the Gradle configuration file <code>~/.gradle/gradle.properties</code>:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div><p>Before creating a release, ensure that:</p><ul><li>You have setup your own public OpenGPG key signature for signing the distribution</li><li>You can login to <a shape="rect" class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a></li><li>You have a Git workspace for&#160;<a shape="rect" class="external-link" href="https://git-wip-us.apache.org/repos/asf/tapestry-5.git">https://git-wip-us.apache.org/repos/asf/tapestry-5.git</a></li><li>You have a Subversion workspace for&#160;<a shape="rect" class="external-link" href="https://dist.apache.org/repos/dist/dev/tapestry">https://dist.apache.org/repos/dist/dev/tapestry</a>&#160;(dev archives workspace)</li><li>You have a Subversion workspace for&#160;<a shape="rect" class="external-link" href="https://dist.apache.org/repos/dist/release/tapestry">https://dist.apache.org/repos/dist/release/tapestry</a>&#160;(release archives workspace)</li><li>You have a Subversion workspace for&#160;<a s
 hape="rect" class="external-link" href="https://svn.apache.org/repos/infra/websites/production/tapestry/content">https://svn.apache.org/repos/infra/websites/production/tapestry/content</a>&#160;(site content workspace)</li></ul><h2 id="ReleaseProcess-GITandDeploymentCredentials">GIT and Deployment Credentials</h2><p>To successfully create a release, you will need to update your Gradle settings with the credentials for your git user and the deployment user. These credentials are stored in the Gradle configuration file <code>~/.gradle/gradle.properties</code>:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[apacheDeployUserName=hlship
 apacheDeployPassword=...
 
 signing.keyId=7CC19136
-signing.secretKeyRingFile=/Users/hlship/.gnupg/secring.gpg
+signing.secretKeyRingFile=.../.gnupg/secring.gpg
 signing.password=...
-]]></script>
-</div></div><h2 id="ReleaseProcess-ReleaseSteps">Release Steps</h2><p>The process can be summarized as:</p><ul><li>Update your workspace to the release branch, currently 5.3: <code>git co 5.3</code><ul><li>It is normal for the release branch to be created a week or more before the planned release</li></ul></li><li>Update <code>build.gradle</code> to set the version number, then <code>git commit</code><ul><li>Don't forget to set it back to 5.x-SNAPSHOT after the release</li></ul></li><li>Run the build using <code>gradle generateRelease</code><ul><li>This will create, sign, and upload JAR files and other artifacts to the Nexus repository</li><li>It will also create, sign, and upload the source and javadoc archives to your <code>~/public_html/tapestry-releases</code> folder of your Apache home directory (at people.apache.org)</li></ul></li><li>Tag the release in Git, then push the changes up to the Apache repository:<ul><li><code>git tag 5.x.x</code></li><li><code>git push --tags</code
 ></li></ul></li><li>Update <code>build.gradle</code> to bump the version number to 5.x(.y)?-SNAPSHOT, then <code>git commit</code></li><li>Login to <a shape="rect" class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a> and <strong>close</strong> the automatically created staging repository, and note its url</li><li>Use the <a shape="rect" class="external-link" href="https://issues.apache.org/jira/plugins/servlet/project-config/TAP5/versions">Manage Versions page</a> in JIRA to add a new version (this is often not necessary as it is often created by someone earlier)</li><li><strong>Release</strong> the version, moving outstanding issues to the next version</li><li>Generate HTML Release Notes<ul><li>Visit the <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5#selectedTab=com.atlassian.jira.plugin.system.project:versions-panel&amp;subset=-1">TAP5 Versions pages in JIRA</a></li><li>Choose the correct versio
 n number</li><li>Click "Release Notes" (upper right corner of the page)</li><li>Create a new Confluence child page of <a shape="rect" href="release-notes.html">Release Notes</a> (it may already exist)</li><li>Update with text about any unusual aspects of the upgrade (especially, non-backwards compatible changes)</li><li>Paste the HTML release notes content into the new page (you'll have to use the {html} macro)</li><li>Rename the "Bug" heading to "Bugs Fixed", "Improvement" to "Improvements Made", "New Feature" to "New Features Added"</li><li>Update <a shape="rect" href="release-notes.html">Release Notes</a> index page to point to the new page</li></ul></li><li>Send vote email ... <strong>3 days pass</strong></li><li>Login to <a shape="rect" class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a> and <strong>release</strong> the version's repository<ul><li>Enter "Apache Tapestry 5.x.x" (adjust as necessary) for the message</li><li>The vers
 ion will disappear from the list of repositories after releasing it</li><li>Releasing will ultimately get the artifacts up to the central Maven repository</li></ul></li><li>Documentation and Downloads:<ul><li>SSH to people.apache.org and move the source and javadoc archives to <code>/www/www.apache.org/dist/tapestry/</code></li><li>Create (if necessary) <code>/www/tapestry.apache.org/5.x.x</code> to store documentation for the release</li><li>Unpack the JavaDoc archive into the directory (it will become the <code>apidocs</code> directory)</li><li>Update SVN PubSub repo at <a shape="rect" class="external-link" href="https://svn.apache.org/repos/infra/websites/production/tapestry/content/">https://svn.apache.org/repos/infra/websites/production/tapestry/content/</a> to clean old api dir and relink all symlinks to point to the new <code>5.x.x</code> directory</li></ul></li><li>Once files reach all mirrors, update the Downloads Page</li><li>Create a Confluence blog entry to describe the 
 new release (this will automatically appear on the Tapestry home page)</li><li>Edit <code>/www/tapestry.apache.org/archetype-catalog.xml</code> to add or update a new entry for the release</li><li>Update the release number listed in the following pages in the Confluence wiki:<ul><li><a shape="rect" href="download.html">Download</a> page</li><li>(Optional) Tutorial <a shape="rect" href="creating-the-skeleton-application.html">Creating The Skeleton Application</a> page: Tapestry version number in the archetype</li><li>(Optional) <a shape="rect" href="getting-started.html">Getting Started</a> page: Tapestry version number in the archetype</li></ul></li><li>Update the release number and date at <a shape="rect" class="external-link" href="http://svn.apache.org/repos/asf/tapestry/tapestry-site/branches/post-5.2-site/publish/doap_Tapestry.rdf">http://svn.apache.org/repos/asf/tapestry/tapestry-site/branches/post-5.2-site/publish/doap_Tapestry.rdf</a></li></ul><h2 id="ReleaseProcess-Atemplat
 eforthevotee-mail:">A template for the vote e-mail:</h2><div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
-<pre>I've created and uploaded a release of Tapestry 5.x.x, ready to be voted upon.
 
-The source and source downloads are uploaded to:
+apacheArchivesFolder=.../tapestry-dev]]></script>
+</div></div><p>You can find your keyId using&#160;<code>gpg --list-keys</code>.</p><p>&#160;The apacheArchivesFolder should be the full path to your dev archives workspace.&#160;The build will copy files to this folder; see further notes below.</p><h2 id="ReleaseProcess-ReleaseSteps">Release Steps</h2><h3 id="ReleaseProcess-GeneratetheRelease">Generate the Release</h3><ul><li>Update your workspace to the release branch<ul><li>For current work, the release branch is&#160;<em>master</em></li><li>When creating bug fix releases for older releases, the branch will match the release, e.g.,&#160;<em>5.3</em></li></ul></li><li><span style="line-height: 1.4285715;">Run the build using </span><code style="line-height: 1.4285715;">gradle generateRelease</code><br clear="none"><ul><li>This will create, sign, and upload JAR files and other artifacts to the Nexus repository</li><li>It will also create, sign, and copy the source, binary, and documentation archives to your dev archives workspace</l
 i></ul></li><li>Tag the release in Git, then push the changes up to the Apache repository:<ul><li><code>git tag 5.x</code></li><li><code>git push --tags</code></li></ul></li><li>Login to&#160;<a shape="rect" class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a>&#160;and&#160;<strong>close</strong>&#160;the automatically created staging repository</li></ul><h3 id="ReleaseProcess-CommittheArchives">Commit the Archives</h3><ul><li>The build will have copied archive files to your dist workspace</li><li><code>svn add</code> the new files</li><li><code>svn commit</code> to copy the files up to Apache (this is&#160;<em>slow</em>)<ul><li>Use the full version number as the commit message, e.g.,&#160;<em>5.4-beta-26</em></li></ul></li><li>You can verify the files via the web:&#160;<a shape="rect" class="external-link" href="https://dist.apache.org/repos/dist/dev/tapestry">https://dist.apache.org/repos/dist/dev/tapestry</a></li></ul><h3 id="Release
 Process-BumptheVersionNumber">Bump the Version Number</h3><ul><li>Update&#160;<code>build.gradle</code>&#160;to increment the version number</li><li>Increment the minor version number (inside the tapestryVersion method, near the top of the file)</li><li><p>Commit and push the changes</p></li></ul><h3 id="ReleaseProcess-SendVote">Send Vote</h3><ul><li><span style="line-height: 1.4285715;">Send vote email</span></li><li><span style="line-height: 1.4285715;"><strong>Wait 3 days</strong><br clear="none"></span></li><li><span style="line-height: 1.4285715;">The vote is successful if there are at least three&#160;<strong>+1</strong>'s and more <strong>+1</strong> than <strong>-1</strong></span></li><li><span style="line-height: 1.4285715;">Only PMC members may cast binding votes<br clear="none"></span></li></ul><h3 id="ReleaseProcess-"><span style="line-height: 22.857143px;">&#160;</span></h3><h3 id="ReleaseProcess-UpdateJIRAandgeneratereleasenotes"><span>Update JIRA and generate release 
 notes</span></h3><h3 id="ReleaseProcess-.1"><span style="line-height: 22.857143px;">&#160;</span></h3><ul><li><span>Use the&#160;</span><a shape="rect" class="external-link" href="https://issues.apache.org/jira/plugins/servlet/project-config/TAP5/versions">Manage Versions page</a><span>&#160;in JIRA to add a new version (this is often not necessary as it is often created by someone earlier)</span></li><li><strong>Release</strong>&#160;the version, moving outstanding issues to the next version</li><li>Generate HTML Release Notes<ul><li>Visit the&#160;<a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/TAP5#selectedTab=com.atlassian.jira.plugin.system.project:versions-panel&amp;subset=-1">TAP5 Versions pages in JIRA</a></li><li>Choose the correct version number</li><li>Click "Release Notes" (upper right corner of the page)</li><li>Create a new Confluence child page of&#160;<a shape="rect" href="release-notes.html">Release Notes</a>&#160;(it may already ex
 ist)</li><li>Update with text about any unusual aspects of the upgrade (especially, non-backwards compatible changes)</li><li>Paste the HTML release notes content into the new page (you'll have to use the {html} macro)</li><li>Rename the "Bug" heading to "Bugs Fixed", "Improvement" to "Improvements Made", "New Feature" to "New Features Added"</li><li>Update&#160;<a shape="rect" href="release-notes.html">Release Notes</a>&#160;index page to point to the new page</li></ul></li></ul><h3 id="ReleaseProcess-ReleasetheMavenArtifacts"><span style="line-height: 22.857143px;">Release the Maven Artifacts</span></h3><ul><li>Login to <a shape="rect" class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a> and <strong>release</strong> the version's repository<ul><li>Enter "Apache Tapestry 5.x" (adjust as necessary) for the message</li><li>The version will disappear from the list of repositories after releasing it</li></ul></li><li>Releasing will ultimat
 ely get the artifacts up to the central Maven repository</li></ul><h3 id="ReleaseProcess-ReleasetheArchives">Release the Archives</h3><ul><li>Copy the release archives files (including checksums and GPG signatures) to the release archives workspace</li><li>Change to the release archives workspace</li><li><code>svn add</code> and&#160;<code>svn commit</code>, as with the dev archives workspace</li></ul><h3 id="ReleaseProcess-ReleasetheKraken">Release the Kraken</h3><ul><li>This occurs automatically</li></ul><h3 id="ReleaseProcess-Wait">Wait</h3><ul><li>You must wait at least 24 hours for the archives and artifacts to be distributed to the Apache mirrors and to the central Maven repository</li></ul><h3 id="ReleaseProcess-UpdateDocumentation"><span style="line-height: 1.4285715;">Update Documentation</span></h3><ul><li><span style="line-height: 1.4285715;">Update the release number listed in the following pages in the Confluence wiki:</span><br clear="none"><ul><li><a shape="rect" href
 ="download.html">Download</a> page</li><li>(Optional) Tutorial <a shape="rect" href="creating-the-skeleton-application.html">Creating The Skeleton Application</a> page: Tapestry version number in the archetype</li><li>(Optional) <a shape="rect" href="getting-started.html">Getting Started</a> page: Tapestry version number in the archetype</li></ul></li><li><span>Change to the site content workspace</span></li><li><code>svn update</code>&#160;to get any recent changes</li><li><span>Edit&#160;</span><code>archetype-catalog.xml</code><span>&#160;to add or update a new entry for the release</span></li><li><span style="line-height: 1.4285715;">Update the release number and date inside&#160;</span><code style="line-height: 1.4285715;">doap.rdf</code><span style="line-height: 1.4285715;"> &#160;(this is a </span><a shape="rect" class="external-link" href="https://projects.apache.org/doap.html" style="line-height: 1.4285715;">description file</a><span style="line-height: 1.4285715;"> for the
  project)</span></li><li><span style="line-height: 1.4285715;"><code>svn commit</code></span></li></ul><h3 id="ReleaseProcess-Done!"><span style="line-height: 1.4285715;">Done!</span></h3><h2 id="ReleaseProcess-Atemplateforthevotee-mail:">A template for the vote e-mail:</h2><div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
+<pre>I've created and uploaded a release of Tapestry 5.x, ready to be voted upon.
+
+The source, binary, and documentation archives have been uploaded to:
+
+
+https://dist.apache.org/repos/dist/dev/tapestry
 
-http://people.apache.org/~USER/tapestry-releases/
 
 and the Maven artifacts staged to:
 
 https://repository.apache.org/content/repositories/staging
-Please examine these files to determine if the new release, 5.x.x, is ready.
 
-I've also created a 5.x.x tag in Git:
 
-https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;a=commit;h=c5600a8de7645fb7bd5cc21b38f8902a36c1b840
+Please examine these files to determine if the new release, 5.x, is ready.
+
+
+I've also created a 5.x tag in Git:
+
+
+https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;a=log;h=refs/tags/5.x
+
+
+Vote will run for three days and requires majority approval from
+the PMC: At least 3 binding +1 votes and more positive than
+negative binding votes.
+
+
+On a successful vote, I'll release the Maven artifacts, the archives,
+and make the necessary updates to JIRA and the Tapestry site.
+
 
-Vote will run for three days; On a successful vote, I'll release the Maven
-artifacts, and move the source and javadoc distributions from these directories
-to the proper distribution directories and update the Tapestry site
-documentation, and send out appropriate notifications.
-</pre>
+Only votes cast by Tapestry PMC members are binding, but input
+from the community is highly valued. Please indicate whether your
+vote is binding or not after your full name (as it will appear in
+the end-of-vote summary).</pre>
 </div></div><p>I often embellish this template with extra detail.</p><p>Lately, I append a text version of the JIRA release notes as well.</p></div>
 </div>