You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by bu...@apache.org on 2020/05/02 22:19:53 UTC
svn commit: r1060105 - in /websites/production/tapestry/content:
cache/main.pageCache release-process.html
Author: buildbot
Date: Sat May 2 22:19:52 2020
New Revision: 1060105
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 Sat May 2 22:19:52 2020
@@ -160,7 +160,7 @@
<span class="icon aui-icon content-type-page" title="Page">Page:</span> </div>
<div class="details">
- <a href="developer-information.html">Developer Information</a>
+ <a href="release-process.html">Release Process</a>
</div>
@@ -169,7 +169,7 @@
<span class="icon aui-icon content-type-page" title="Page">Page:</span> </div>
<div class="details">
- <a href="release-process.html">Release Process</a>
+ <a href="developer-information.html">Developer Information</a>
</div>
@@ -213,7 +213,7 @@
</div>
-<p>Before creating a release, ensure that:</p><ul><li>You have <a class="external-link" href="http://www.apache.org/dev/openpgp.html">setup your own public OpenGPG key signature</a> for signing the distribution</li><li>You can login to <a class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a></li><li>You have a Git workspace for <a 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 <a class="external-link" href="https://dist.apache.org/repos/dist/dev/tapestry">https://dist.apache.org/repos/dist/dev/tapestry</a> (dev archives workspace)</li><li>You have a Subversion workspace for <a class="external-link" href="https://dist.apache.org/repos/dist/release/tapestry">https://dist.apache.org/repos/dist/release/tapestry</a> (release archives workspace)</li><li>You have a Subversion w
orkspace for <a 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> (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">
+<p>Before creating a release, ensure that:</p><ul><li>You have <a class="external-link" href="http://www.apache.org/dev/openpgp.html">setup your own public OpenGPG key signature</a> for signing the distribution</li><li>You can login to <a class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a></li><li>You have a Git clone of <a 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> (<strong>Tapestry source code project</strong>)</li><li>You have a Subversion checkout of <a class="external-link" href="https://dist.apache.org/repos/dist/dev/tapestry">https://dist.apache.org/repos/dist/dev/tapestry</a> (<strong>dev artifact archive</strong>)</li><li>You have a Subversion checkout of <a class="external-link" href="https://dist.apache.org/repos/dist/release/tapestry">https://dist.apache.org/repos/dist/release/tapestry</a> (
<strong>release artifact archive</strong>)</li><li>You have a Subversion checkout of <a 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> (site content)</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">
<pre><code class="language-java">apacheDeployUserName=hlship
apacheDeployPassword=...
@@ -222,7 +222,7 @@ signing.secretKeyRingFile=.../.gnupg/sec
signing.password=...
apacheArchivesFolder=.../tapestry-dev</code></pre>
-</div></div><p>You can find your keyId using <code>gpg --list-keys</code>.</p><p> The apacheArchivesFolder should be the full path to your dev archives workspace. The build will copy files to this folder; see further notes below.</p><h2 id="ReleaseProcess-ReleaseSteps">Release Steps</h2><h3 id="ReleaseProcess-1.GeneratetheRelease">1. Generate the Release</h3><ol><li>Update your workspace to the release branch<ol><li>For current work, the release branch is <em>master</em></li><li>When creating bug fix releases for older releases, the branch will match the release, e.g., <em>5.3</em></li></ol></li><li><span>Run the build using </span><code>gradle generateRelease</code><ol><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</li></ol></li><li>Tag the release in Git, then push the changes up to the
Apache repository:<ol><li><code>git tag 5.x</code></li><li><code>git push --tags</code></li></ol></li><li>Login to <a class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a> and <strong>close</strong> the automatically created staging repository</li></ol><h3 id="ReleaseProcess-2.CommittheArchives">2. Commit the Archives</h3><ol><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 <em>slow</em>)<ol><li>Use the full version number as the commit message, e.g., <em>5.4-beta-26</em></li></ol></li><li>You can verify the files via the web: <a class="external-link" href="https://dist.apache.org/repos/dist/dev/tapestry">https://dist.apache.org/repos/dist/dev/tapestry</a></li></ol><h3 id="ReleaseProcess-3.BumptheVersionNumber">3. Bump the Version Number</h3><ol><li>Update <code>bui
ld.gradle</code> 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></ol><h3 id="ReleaseProcess-4.SendVote">4. Send Vote</h3><ol><li><span>Send vote email</span></li><li><span><strong>Wait 3 days</strong></span></li><li><span>The vote is successful if there are at least three <strong>+1</strong>'s and more <strong>+1</strong> than <strong>-1</strong></span></li><li><span>Only PMC members may cast binding votes</span></li></ol><h3 id="ReleaseProcess-5.UpdateJIRAandgeneratereleasenotes"><span>5. Update JIRA and generate release notes</span><span> </span></h3><ol><li><span>Use the </span><a class="external-link" href="https://issues.apache.org/jira/plugins/servlet/project-config/TAP5/versions">Manage Versions page</a><span> 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> the version, moving outstanding issues to the next version</li><li>Generate HTML Release Notes<ol><li>Visit the <a class="external-link" href="https://issues.apache.org/jira/browse/TAP5#selectedTab=com.atlassian.jira.plugin.system.project:versions-panel&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 <a 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 href="release-notes.html">Release Notes</a> index page to point
to the new page</li></ol></li></ol><h3 id="ReleaseProcess-6.ReleasetheMavenArtifacts"><span>6. Release the Maven Artifacts</span></h3><ol><li>Login to <a class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a> and <strong>release</strong> the version's repository<ol><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></ol></li><li>Releasing will ultimately get the artifacts up to the central Maven repository</li></ol><h3 id="ReleaseProcess-7.ReleasetheArchives">7. Release the Archives</h3><ol><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<code>svn commit</code>, as with the dev archives workspace</li></ol><h3 id="ReleaseProcess-8.ReleasetheJavadocs">8. Release the Javadocs</h3><ol><li>Run the
"aggregateJavadoc" gradle task</li><li>Copy the resulting files from build/documentation/javadocs/* to a version-numbered subdirectory of your site <em>content</em> workspace (see Prerequisites at the top of this page)</li><li>svn commit those new javadoc files</li><li>Update the "current" symbolic link under the content directory to point to new version-numbered directory. For example, if "current" is a symbolic link to "5.4" and you want to change it to "5.5", do this:<ul><li>rm current</li><li>ln -s 5.5 current</li><li>svn commit -m "Updated javadocs current symbolic link" current</li></ul></li></ol><h3 id="ReleaseProcess-9.Wait">9. 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-10.UpdateDocumentation"><span>10. Update Documentation</span></h3><ol><li><span>Update the release number listed in the following pages in the Confluence wiki:</spa
n><ol><li class="confluence-link"><a href="download.html">Download</a> page</li><li>(Optional) Tutorial <a href="creating-the-skeleton-application.html">Creating The Skeleton Application</a> page: Tapestry version number in the archetype</li><li>(Optional) <a href="getting-started.html">Getting Started</a> page: Tapestry version number in the archetype</li></ol></li><li><span>Change to the site content workspace</span></li><li><code>svn update</code> to get any recent changes</li><li><span>Edit </span><a class="external-link" href="https://svn.apache.org/repos/infra/websites/production/tapestry/content/archetype-catalog.xml"><span> </span><code>archetype-catalog.xml</code><span> </span></a><span>to add or update a new entry for the release</span></li><li><span>Update the release number and date inside </span><code>doap.rdf</code><span>  (this is a </span><a class="external-link" href="https://projects.apache.org/doap.html">description file</a>
<span> for the project)</span></li><li><span><code>svn commit</code></span></li></ol><h3 id="ReleaseProcess-11.Blog&Tweet"><span>11. Blog & Tweet</span></h3><ol><li><a href="https://cwiki.apache.org/confluence/pages/viewrecentblogposts.action?key=TAPESTRY"><span>Write a blog post</span></a><span> in Confluence announcing the release.</span></li><li><span>Send an email to the <em>users</em> mailing list announcing the release.</span></li><li><span>Send out a tweet (using the <a class="external-link" href="https://twitter.com/apachetapestry" rel="nofollow"><em>ApacheTapestry</em></a> Twitter account) announcing the release.</span></li></ol><h3 id="ReleaseProcess-Done!"><span>Done!</span></h3><p><span></span></p><hr><h2 id="ReleaseProcess-Atemplateforthevotee-mail:">A template for the vote e-mail:</h2><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>You can find your keyId using <code>gpg --list-keys</code>.</p><p> You should set apacheArchivesFolder to the full path of your local<strong> dev artifact archives</strong> directory (see above). The build will copy files to this folder; see further notes below.</p><h2 id="ReleaseProcess-ReleaseSteps">Release Steps</h2><h3 id="ReleaseProcess-1.GeneratetheRelease">1. Generate the Release</h3><ol><li>In your <strong>Tapestry source code project</strong> directory, switch to the release branch<ol><li>For current work, the release branch is <em>master</em></li><li>When creating bug fix releases for older releases, the branch will match the release, e.g., <em>5.3</em></li></ol></li><li><span>Run the build using </span><code>gradle generateRelease</code><ol><li>This will create, sign, and upload JAR files and other artifacts to the <strong>Nexus</strong> repository</li><li>It will also create, sign, and copy the source, binary, a
nd documentation archives to your<strong> dev artifact archive</strong> directory</li></ol></li><li>Tag the release in Git, then push the changes up to the Apache repository:<ol><li><code>git tag 5.x</code></li><li><code>git push --tags</code></li></ol></li><li>Login to <a class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a> and <strong>close</strong> the automatically created staging repository</li></ol><h3 id="ReleaseProcess-2.CommittheArchives">2. Commit the Archives</h3><ol><li>The build will have copied archive files to your <strong>dev artifact archive</strong> directory.</li><li><code>svn add</code> the new files</li><li><code>svn commit</code> to copy the files up to Apache (this is <em>slow</em>)<ol><li>Use the full version number as the commit message, e.g., <em>5.4-beta-26</em></li></ol></li><li>You can verify the files via the web: <a class="external-link" href="https://dist.apach
e.org/repos/dist/dev/tapestry">https://dist.apache.org/repos/dist/dev/tapestry</a></li></ol><h3 id="ReleaseProcess-3.BumptheVersionNumber">3. Bump the Version Number</h3><ol><li>Update <code>build.gradle</code> 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></ol><h3 id="ReleaseProcess-4.SendVote">4. Send Vote</h3><ol><li><span>Send vote email</span></li><li><span><strong>Wait 3 days</strong></span></li><li><span>The vote is successful if there are at least three <strong>+1</strong>'s and more <strong>+1</strong> than <strong>-1</strong></span></li><li><span>Only PMC members may cast binding votes</span></li></ol><h3 id="ReleaseProcess-5.UpdateJIRAandgeneratereleasenotes"><span>5. Update JIRA and generate release notes</span><span> </span></h3><ol><li><span>Use the </span><a class="external-link" href="https://issues.apache.
org/jira/plugins/servlet/project-config/TAP5/versions">Manage Versions page</a><span> in JIRA to add a new version (if not already created).</span></li><li><strong>Release</strong> the version, moving outstanding issues to the next version.</li><li>Generate HTML Release Notes<ol><li>Visit the <a class="external-link" href="https://issues.apache.org/jira/browse/TAP5#selectedTab=com.atlassian.jira.plugin.system.project:versions-panel&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 <a 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", "Improvem
ent" to "Improvements Made", "New Feature" to "New Features Added"</li><li>Update <a href="release-notes.html">Release Notes</a> index page to point to the new page</li></ol></li></ol><h3 id="ReleaseProcess-6.ReleasetheMavenArtifacts"><span>6. Release the Maven Artifacts</span></h3><ol><li>Login to <a class="external-link" href="https://repository.apache.org/index.html#stagingRepositories">Nexus</a> and <strong>release</strong> the version's repository<ol><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></ol></li><li>Releasing will ultimately get the artifacts up to the central Maven repository</li></ol><h3 id="ReleaseProcess-7.ReleasetheArchives">7. Release the Archives</h3><ol><li>Copy the release archives files (including checksums and GPG signatures) to your <strong>release artifact archives</strong> directory</li><li>Change to the release archives workspace</li
><li><code>svn add</code> and <code>svn commit</code>, as with the dev archives workspace</li></ol><h3 id="ReleaseProcess-8.ReleasetheJavadocs">8. Release the Javadocs</h3><ol><li>Run the "aggregateJavadoc" gradle task</li><li>Copy the resulting files from build/documentation/javadocs/* to a version-numbered subdirectory of your site <em>content</em> workspace (see Prerequisites at the top of this page)</li><li>svn commit those new javadoc files</li><li>Update the "current" symbolic link under the content directory to point to new version-numbered directory. For example, if "current" is a symbolic link to "5.4" and you want to change it to "5.5", do this:<ul><li>rm current</li><li>ln -s 5.5 current</li><li>svn commit -m "Updated javadocs current symbolic link" current</li></ul></li></ol><h3 id="ReleaseProcess-9.Wait">9. 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-10.UpdateDocumentation"><span>10. Update Documentation</span></h3><ol><li><span>Update the release number listed in the following pages in the Confluence wiki:</span><ol><li class="confluence-link"><a href="download.html">Download</a> page</li><li>(Optional) Tutorial <a href="creating-the-skeleton-application.html">Creating The Skeleton Application</a> page: Tapestry version number in the archetype</li><li>(Optional) <a href="getting-started.html">Getting Started</a> page: Tapestry version number in the archetype</li></ol></li><li><span>Switch to the site content SVN project.</span></li><li><code>svn update</code> to get any recent changes.</li><li><span>Edit </span><a class="external-link" href="https://svn.apache.org/repos/infra/websites/production/tapestry/content/archetype-catalog.xml"><span> </span><code>archetype-catalog.xml</code><span> </span></a><span>to add or update a new entry for the release</span></li><li><span>
Edit the <a class="external-link" href="https://svn.apache.org/repos/infra/websites/production/tapestry/content/doap.rdf">doap.rdf file</a> with the release number and date </span><span>(this is a </span><a class="external-link" href="https://projects.apache.org/doap.html">description file</a><span> for the project).</span></li><li><span><code>svn commit</code></span></li></ol><h3 id="ReleaseProcess-11.Blog&Tweet"><span>11. Blog & Tweet</span></h3><ol><li><a href="https://cwiki.apache.org/confluence/pages/viewrecentblogposts.action?key=TAPESTRY"><span>Write a blog post</span></a><span> in Confluence announcing the release.</span></li><li><span>Send an email to the <em>users</em> mailing list announcing the release.</span></li><li><span>Send out a tweet (using the <a class="external-link" href="https://twitter.com/apachetapestry" rel="nofollow"><em>ApacheTapestry</em></a> Twitter account) announcing the release.</span></li></ol><h3 id="ReleaseProcess-Done!"><span>Done!</span>
</h3><p><span></span></p><hr><h2 id="ReleaseProcess-Atemplateforthevotee-mail:">A template for the vote e-mail:</h2><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
<pre><code class="language-java">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: