| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1"> |
| <title>Apache Aurora</title> |
| <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css"> |
| <link href="/assets/css/main.css" rel="stylesheet"> |
| <!-- Analytics --> |
| <script type="text/javascript"> |
| var _gaq = _gaq || []; |
| _gaq.push(['_setAccount', 'UA-45879646-1']); |
| _gaq.push(['_setDomainName', 'apache.org']); |
| _gaq.push(['_trackPageview']); |
| |
| (function() { |
| var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; |
| ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; |
| var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); |
| })(); |
| </script> |
| </head> |
| <body> |
| <div class="container-fluid section-header"> |
| <div class="container"> |
| <div class="nav nav-bar"> |
| <a href="/"><img src="/assets/img/aurora_logo_dkbkg.svg" width="300" alt="Transparent Apache Aurora logo with dark background"/></a> |
| <ul class="nav navbar-nav navbar-right"> |
| <li><a href="/documentation/latest/">Documentation</a></li> |
| <li><a href="/community/">Community</a></li> |
| <li><a href="/downloads/">Downloads</a></li> |
| <li><a href="/blog/">Blog</a></li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| |
| <div class="container-fluid"> |
| <div class="container content"> |
| <div class="col-md-12 documentation"> |
| <h5 class="page-header text-uppercase">Documentation |
| <select onChange="window.location.href='/documentation/' + this.value + '/development/committers-guide/'" |
| value="0.19.0"> |
| <option value="0.22.0" |
| > |
| 0.22.0 |
| (latest) |
| </option> |
| <option value="0.21.0" |
| > |
| 0.21.0 |
| </option> |
| <option value="0.20.0" |
| > |
| 0.20.0 |
| </option> |
| <option value="0.19.1" |
| > |
| 0.19.1 |
| </option> |
| <option value="0.19.0" |
| selected="selected"> |
| 0.19.0 |
| </option> |
| <option value="0.18.1" |
| > |
| 0.18.1 |
| </option> |
| <option value="0.18.0" |
| > |
| 0.18.0 |
| </option> |
| <option value="0.17.0" |
| > |
| 0.17.0 |
| </option> |
| <option value="0.16.0" |
| > |
| 0.16.0 |
| </option> |
| <option value="0.15.0" |
| > |
| 0.15.0 |
| </option> |
| <option value="0.14.0" |
| > |
| 0.14.0 |
| </option> |
| <option value="0.13.0" |
| > |
| 0.13.0 |
| </option> |
| <option value="0.12.0" |
| > |
| 0.12.0 |
| </option> |
| <option value="0.11.0" |
| > |
| 0.11.0 |
| </option> |
| <option value="0.10.0" |
| > |
| 0.10.0 |
| </option> |
| <option value="0.9.0" |
| > |
| 0.9.0 |
| </option> |
| <option value="0.8.0" |
| > |
| 0.8.0 |
| </option> |
| <option value="0.7.0-incubating" |
| > |
| 0.7.0-incubating |
| </option> |
| <option value="0.6.0-incubating" |
| > |
| 0.6.0-incubating |
| </option> |
| <option value="0.5.0-incubating" |
| > |
| 0.5.0-incubating |
| </option> |
| </select> |
| </h5> |
| <h1 id="committer-39-s-guide">Committer’s Guide</h1> |
| |
| <p>Information for official Apache Aurora committers.</p> |
| |
| <h2 id="setting-up-your-email-account">Setting up your email account</h2> |
| |
| <p>Once your Apache ID has been set up you can configure your account and add ssh keys and setup an |
| email forwarding address at</p> |
| <pre class="highlight plaintext"><code>http://id.apache.org |
| </code></pre> |
| |
| <p>Additional instructions for setting up your new committer email can be found at</p> |
| <pre class="highlight plaintext"><code>http://www.apache.org/dev/user-email.html |
| </code></pre> |
| |
| <p>The recommended setup is to configure all services (mailing lists, JIRA, ReviewBoard) to send |
| emails to your @apache.org email address.</p> |
| |
| <h2 id="creating-a-gpg-key-for-releases">Creating a gpg key for releases</h2> |
| |
| <p>In order to create a release candidate you will need a gpg key published to an external key server |
| and that key will need to be added to our KEYS file as well.</p> |
| |
| <ol> |
| <li><p>Create a key:</p> |
| <pre class="highlight plaintext"><code> gpg --gen-key |
| </code></pre></li> |
| <li><p>Add your gpg key to the Apache Aurora KEYS file:</p> |
| <pre class="highlight plaintext"><code> git clone https://gitbox.apache.org/repos/asf/aurora.git |
| (gpg --list-sigs <KEY ID> && gpg --armor --export <KEY ID>) >> KEYS |
| git add KEYS && git commit -m "Adding gpg key for <APACHE ID>" |
| ./rbt post -o -g |
| </code></pre></li> |
| <li><p>Publish the key to an external key server:</p> |
| <pre class="highlight plaintext"><code> gpg --keyserver pgp.mit.edu --send-keys <KEY ID> |
| </code></pre></li> |
| <li><p>Update the changes to the KEYS file to the Apache Aurora svn dist locations listed below:</p> |
| <pre class="highlight plaintext"><code> https://dist.apache.org/repos/dist/dev/aurora/KEYS |
| https://dist.apache.org/repos/dist/release/aurora/KEYS |
| </code></pre></li> |
| <li><p>Add your key to git config for use with the release scripts:</p> |
| <pre class="highlight plaintext"><code> git config --global user.signingkey <KEY ID> |
| </code></pre></li> |
| </ol> |
| |
| <h2 id="creating-a-release">Creating a release</h2> |
| |
| <p>The following will guide you through the steps to create a release candidate, vote, and finally an |
| official Apache Aurora release. Before starting your gpg key should be in the KEYS file and you |
| must have access to commit to the dist.a.o repositories.</p> |
| |
| <ol> |
| <li>Ensure that all issues resolved for this release candidate are tagged with the correct Fix |
| Version in JIRA, the changelog script will use this to generate the CHANGELOG in step #2. |
| To assign the fix version:</li> |
| </ol> |
| <pre class="highlight plaintext"><code>* Look up the [previous release date](https://issues.apache.org/jira/browse/aurora/?selectedTab=com.atlassian.jira.jira-projects-plugin:versions-panel). |
| * Query all issues resolved after that release date: `project = AURORA AND status in (resolved, Closed) and fixVersion is empty and resolutiondate >= "YYYY/MM/DD"` |
| * In the upper right corner of the query result, select Tools > Bulk Edit. |
| * Select all issues > edit issue > set 'Change Fix Version/s' to the release version. |
| * Make sure to uncheck 'Send mail for this update' at the bottom. |
| </code></pre> |
| |
| <ol> |
| <li><p>Prepare RELEASE-NOTES.md for the release. This just boils down to removing the “(Not yet |
| released)” suffix from the impending release.</p></li> |
| <li><p>Create a release candidate. This will automatically update the CHANGELOG and commit it, create a |
| branch and update the current version within the trunk. To create a minor version update and publish |
| it run</p> |
| <pre class="highlight plaintext"><code> ./build-support/release/release-candidate -l m -p |
| </code></pre></li> |
| <li><p>Update, if necessary, the draft email created from the <code>release-candidate</code> script in step #2 and |
| send the [VOTE] email to the dev@ mailing list. You can verify the release signature and checksums |
| by running</p> |
| <pre class="highlight plaintext"><code> ./build-support/release/verify-release-candidate |
| </code></pre></li> |
| <li><p>Wait for the vote to complete. If the vote fails close the vote by replying to the initial [VOTE] |
| email sent in step #3 by editing the subject to [RESULT][VOTE] … and noting the failure reason |
| (example <a href="http://markmail.org/message/d4d6xtvj7vgwi76f">here</a>). You’ll also need to manually revert |
| the commits generated by the release candidate script that incremented the snapshot version and |
| updated the changelog. Once that is done, now address any issues and go back to step #1 and run |
| again, this time you will use the -r flag to increment the release candidate version. This will |
| automatically clean up the release candidate rc0 branch and source distribution.</p> |
| <pre class="highlight plaintext"><code> ./build-support/release/release-candidate -l m -r 1 -p |
| </code></pre></li> |
| <li><p>Once the vote has successfully passed create the release</p></li> |
| </ol> |
| |
| <p><strong>IMPORTANT: make sure to use the correct release at this final step (e.g.: <code>-r 1</code> if rc1 candidate |
| has been voted for). Once the release tag is pushed it will be very hard to undo due to remote |
| git pre-receive hook explicitly forbidding release tag manipulations.</strong></p> |
| <pre class="highlight plaintext"><code> ./build-support/release/release |
| </code></pre> |
| |
| <ol> |
| <li><p>Update the draft email created fom the <code>release</code> script in step #5 to include the Apache ID’s for |
| all binding votes and send the [RESULT][VOTE] email to the dev@ mailing list.</p></li> |
| <li><p>Update the <a href="http://aurora.apache.org/">Aurora Website</a> by following the |
| <a href="https://svn.apache.org/repos/asf/aurora/site/README.md">instructions</a> on the ASF Aurora SVN repo. |
| Remember to add a blog post under source/blog and regenerate the site before committing.</p></li> |
| </ol> |
| |
| </div> |
| |
| </div> |
| </div> |
| <div class="container-fluid section-footer buffer"> |
| <div class="container"> |
| <div class="row"> |
| <div class="col-md-2 col-md-offset-1"><h3>Quick Links</h3> |
| <ul> |
| <li><a href="/downloads/">Downloads</a></li> |
| <li><a href="/community/">Mailing Lists</a></li> |
| <li><a href="http://issues.apache.org/jira/browse/AURORA">Issue Tracking</a></li> |
| <li><a href="/documentation/latest/contributing/">How To Contribute</a></li> |
| </ul> |
| </div> |
| <div class="col-md-2"><h3>The ASF</h3> |
| <ul> |
| <li><a href="http://www.apache.org/licenses/">License</a></li> |
| <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li> |
| <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li> |
| <li><a href="http://www.apache.org/security/">Security</a></li> |
| </ul> |
| </div> |
| <div class="col-md-6"> |
| <p class="disclaimer">© 2014-2017 <a href="http://www.apache.org/">Apache Software Foundation</a>. Licensed under the <a href="http://www.apache.org/licenses/">Apache License v2.0</a>. The <a href="https://www.flickr.com/photos/trondk/12706051375/">Aurora Borealis IX photo</a> displayed on the homepage is available under a <a href="https://creativecommons.org/licenses/by-nc-nd/2.0/">Creative Commons BY-NC-ND 2.0 license</a>. Apache, Apache Aurora, and the Apache feather logo are trademarks of The Apache Software Foundation.</p> |
| </div> |
| </div> |
| </div> |
| |
| </body> |
| </html> |