<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">
<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>
                                <td>
                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="https://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>
                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px; -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
Narayana Release Process
</h3>
<span style="margin-bottom: 10px;">
modified by <a href="https://community.jboss.org/people/tomjenkinson">Tom Jenkinson</a> in <i>JBoss Transactions Development</i> - <a href="https://community.jboss.org/docs/DOC-17433">View the full document</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">
<div class="jive-rendered-content"><p>This page provides a list of instructions that must be done <strong>in order</strong> when doing a release of Narayana.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h2>Check JIRA</h2><p>Ensure all issues are resolved. Any outstanding issues must be pushed back or resolved.</p><h2>Check Hudson</h2><p>Ensure no test failures in the following group of hudson tests (for the branch you intend to release):</p><ul><li>4.16 Branch : jbossts-branch416-*</li><li>4.17 Branch : jbossts-branch417-*</li><li>5 Branch: jbossts-narayana-*</li></ul><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h2>Do Release</h2><h3>Release Quickstarts and Docs</h3><p>Must be done first as the build-release-packages.xml relies on the tag being available</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><pre ___default_attr="plain" class="jive_text_macro jive_macro_code"><p>current='4\([._]\)17\([._]\)0\([._]\)Final-SNAPSHOT'</p><p>next='4\117\20\3Final'</p><p>find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v ".git" | grep -v target | xargs sed -i "s/"$current"/"$next"/"</p><p>git commit -am "Updated to $next"</p><p>git tag 4.17.0.Final</p><p>current='4\([._]\)17\([._]\)0\([._]\)Final'</p><p>next='5\10\20\3M2-SNAPSHOT'</p><p>find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v ".git" | grep -v target | xargs sed -i "s/"$current"/"$next"/"</p><p>git push upstream master --tags</p></pre><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h3 style="text-align: start;">svn branches</h3><pre class="jive-pre"><code class="jive-code">#Make sure your checkout has no local changes
svn update
svn status
POINT_VERSION=5
NEXT_POINT_VERSION=6
#Update the version in text files
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v target | xargs grep  -l "4[._]16" | xargs sed -i "s/4\([._]\)16\([._]\)${POINT_VERSION}\([._]\)Final-SNAPSHOT/4\116\2$POINT_VERSION\3Final/"
svn commit -m "Updated to version 4.16.$POINT_VERSION.Final"
#Tag the release:
svn cp https://svn.jboss.org/repos/labs/labs/jbosstm/branches/JBOSSTS_4_16 https://svn.jboss.org/repos/labs/labs/jbosstm/tags/JBOSSTS_4_16_${POINT_VERSION}_Final/ -m "4.16.$POINT_VERSION"
#Bump to next version using similar find to above
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v target | xargs grep  -l "4[._]16" | xargs sed -i "s/4\([._]\)16\([._]\)${POINT_VERSION}\([._]\)Final/4\116\2${NEXT_POINT_VERSION}\3Final-SNAPSHOT/"
svn commit -m "Updated to version 4.16.${NEXT_POINT_VERSION}.Final-SNAPSHOT"
#Update the maven version of jbossts in our fork of JBossAS: https://github.com/jbosstm/jboss-as
git pull --rebase --ff-only
#Check no local changes
git status
git checkout 4_16_BRANCH
sed -i "s/4.16.${POINT_VERSION}.Final-SNAPSHOT/4.16.${NEXT_POINT_VERSION}.Final-SNAPSHOT/g" pom.xml
git commit -am "Updated to 4.16.${NEXT_POINT_VERSION}.Final-SNAPSHOT"
git push
#Build and deploy the release to nexus staging:
mkdir ~/filemgmt.jboss.org/
sshfs jbosstm@filemgmt.jboss.org: ~/filemgmt.jboss.org/
ant -f build-release-pkgs.xml dist mvn-repository downloads magnolia
</code></pre><h5 style="text-align: start;"></h5><h3 style="text-align: start;">git branches</h3><pre class="jive-pre"><code class="jive-code">#Make sure your checkout has no local changes
git checkout master
git status
#Pull remote changes
git fetch
git reset --hard upstream/master
#Update the version in text files and tag and push the release
CHANGE:
current='4\([._]\)17\([._]\)0\([._]\)Final-SNAPSHOT'
next='4\117\20\3Final'
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v ".git" | grep -v target | xargs sed -i "s/"$current"/"$next"/"
git commit -am "Updated to $next"
git tag 4.17.0.Final
git push upstream master
git push upstream --tags
#Bump to next version using similar find to above
CHANGE:
current='4\([._]\)17\([._]\)0\([._]\)Final'
next='5\10\20\3M2-SNAPSHOT'
find . -name \*.java -o -name \*.xml -o -name \*.ent -o -name \INSTALL -o -name \README | grep -v ".svn" | grep -v ".git" | grep -v target | xargs sed -i "s/"$current"/"$next"/"
git push upstream master
#Update the maven version of jbossts in our fork of JBossAS: https://github.com/jbosstm/jboss-as
git clone -o jbosstm https://github.com/jbosstm/jboss-as
git checkout 5_BRANCH
sed -i "s/5.0.0.M1-SNAPSHOT/5.0.0.M2-SNAPSHOT/g" pom.xml
git commit -am "Updated to 5.0.0.M2-SNAPSHOT"
git push jbosstm 5_BRANCH
#Build and deploy the release to nexus staging:
mkdir ~/narayana/filemgmt.jboss.org/
sshfs jbosstm@filemgmt.jboss.org: ~/narayana/filemgmt.jboss.org/
ant -f build-release-pkgs.xml dist mvn-repository downloads magnolia
</code></pre><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><h2 style="text-align: start;">Release the artifact through Nexus</h2><ol><li style="text-align: start;"><a class="jive-link-external-small" href="https://repository.jboss.org/nexus/index.html#welcome" target="_blank">https://repository.jboss.org/nexus/index.html#welcome</a></li><li style="text-align: start;">login</li><li style="text-align: start;">"Staging Repositories"</li><li style="text-align: start;">Click tickbox for your repo</li><li style="text-align: start;">Click "Close"</li><li style="text-align: start;">Dont worry about a description, just click "Close"</li><li style="text-align: start;">Click tickbox after it is closed</li><li style="text-align: start;">Click "Release"</li><li style="text-align: start;">Again a description doesn't matter</li></ol><h2>JIRA Release</h2><ol><li style="text-align: start;">Mark as released.</li></ol><h2>Push Upstream</h2><p style="text-align: start;">If appropriate for this release, create a new 'component update' issue in AS7 JIRA. Ensure the module is set to 'transactions' and select an appropriate 'fix for'.</p><p style="text-align: start;">Assign it to yourself</p><p>Resolve the work and raise the pull request</p><ol><li style="text-align: start;"><a class="jive-link-external-small" href="https://issues.jboss.org/browse/AS7" target="_blank">https://issues.jboss.org/browse/AS7</a></li><li style="text-align: start;">cd AS source</li><li style="text-align: start;">git checkout -b AS7-<JIRANUMBER></li><li>sed -i "s/4.16.3.Final/4.16.4.Final/g" pom.xml</li><li>git commit -am "AS7-<JIRA> Updated to 4.16.4.Final"</li><li>git push</li><li>Raise a pull request</li></ol><h2 style="text-align: start;">Update Website</h2><p>Update the Narayana community site:</p><ul><li>Documentation</li><li>Downloads</li><li>Magnolia (using file generated in build-release-pkgs.xml), also update the front page announcement and the release notes link</li></ul><h2 style="text-align: start;">Promote</h2><p>NOTE: It is worth waiting for the merge of the pull request before advertising, or at least wait for the merge build notification first <span> ;) </span></p><p>Promote the release through the following channels:</p><ol><li><span><span>Email </span><a class="jive-link-email-small" href="mailto:jbossts-announce@lists.jboss.org" target="_blank">jbossts-announce@lists.jboss.org</a></span></li><li>Forum</li><li>Blog - as appropriate</li></ol></div>
<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
<p style="margin: 0;">Comment by <a href="https://community.jboss.org/docs/DOC-17433">going to Community</a></p>
        <p style="margin: 0;">Create a new document in JBoss Transactions Development at <a href="https://community.jboss.org/choose-container!input.jspa?contentType=102&containerType=14&container=2041">Community</a></p>
</div></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>