Hi Patrick, Debo, Uma and Folks. I have written the initial version of "How to release" page for your review. https://cwiki.apache.org/confluence/display/MNEMONIC/How+to+release
@Uma, Thank you very much for constructing our project Wiki portal and already added "How to Contribute to Mnemonic" page for us. https://cwiki.apache.org/confluence/display/MNEMONIC/How+to+Contribute+to+Mnemonic Very truly yours. Gary On Wed, May 31, 2017 at 9:52 PM, Gary Wong <qich...@gmail.com> wrote: > Great! Thanks Debo :) > > Very truly yours > Gary > > > On Wed, May 31, 2017 at 5:36 PM, Debojyoti Dutta <ddu...@gmail.com> wrote: > >> Hi Gary >> >> Thx for the 1st version .... happy to help and will add to the notes as I >> do the release :) >> >> debo >> >> On Wed, May 31, 2017 at 4:17 PM, Gary Wong <qich...@gmail.com> wrote: >> >>> Got it, Thanks, Let me submit initial version of "how to release" to >>> wiki page. >>> >>> Very truly yours. >>> Gary >>> >>> On Wed, May 31, 2017 at 3:18 PM, Patrick Hunt <ph...@apache.org> wrote: >>> >>>> Having a "how to release" wiki page (or any kind of living document) for >>>> the project ensures that anyone in the community can release the >>>> product. >>>> This is great for onboarding new RMs, etc... >>>> >>>> Patrick >>>> >>>> On Wed, May 24, 2017 at 9:27 AM, Debojyoti Dutta <ddu...@gmail.com> >>>> wrote: >>>> >>>> > Thx a lot Gary and Patrick for the tips on release management. It >>>> would be >>>> > my 1st so I am going to seamlessly ask for forgiveness :) >>>> > >>>> > debo >>>> > >>>> > On Tue, May 23, 2017 at 7:43 PM, Patrick Hunt <ph...@apache.org> >>>> wrote: >>>> > >>>> >> fyi many projects capture this, some even capture the exact email >>>> formats >>>> >> etc..., on their wiki. Typically as a "how to release" page, e.g. >>>> >> >>>> >> https://wiki.apache.org/hadoop/HowToRelease >>>> >> http://htrace.incubator.apache.org/building.html >>>> >> >>>> >> You might compare to what you've created, however each project >>>> typically >>>> >> has it's own special cases. >>>> >> >>>> >> For things like "Commit the whole new release candidate folder in the >>>> >> staged trunk >>>> >> using the SVN client to commit it all" (and similar) you probably >>>> should >>>> >> just give the command to run to simplify things and reduce the >>>> chances for >>>> >> error. The more you can make each operation "copy/paste" the more >>>> likely >>>> >> you'll have a successful release and easier for the RM. That said >>>> the more >>>> >> you can automate the better (typically by adding it to mvn). >>>> >> >>>> >> Patrick >>>> >> >>>> >> On Tue, May 23, 2017 at 5:50 PM, Gang(Gary) Wang <ga...@apache.org> >>>> >> wrote: >>>> >> >>>> >>> Hi Debo >>>> >>> >>>> >>> Thanks you Debo for becoming our new releasing manager, I'm trying >>>> to >>>> >>> detail the steps below from my previous releases, hope it can help. >>>> >>> >>>> >>> Hi PPMCs >>>> >>> >>>> >>> Please correct me if any missing or incorrect items below and >>>> welcome to >>>> >>> optimize & improve the following steps, Thanks! >>>> >>> >>>> >>> 1) Prepare a Linux box (one time setup) >>>> >>> The commands are running on Linux OS, so please have a Linux box or >>>> a >>>> >>> Virtual Machine for releasing >>>> >>> >>>> >>> 2) Prepare your release key if not yet or expired (one time setup) >>>> >>> https://www.apache.org/dev/openpgp.html#generate-key >>>> >>> Please also put your key fingerprint into your account, >>>> >>> https://id.apache.org >>>> >>> >>>> >>> 3) Start a GPG agent on your Linux box using the following command >>>> >>> (before >>>> >>> releasing) >>>> >>> $eval 'gpg-agent --daemon --use-standard-socket' >>>> >>> >>>> >>> 4) Install SVN client on your laptop to upload staged/released >>>> artifacts >>>> >>> >>>> >>> 5) Using SVN client to check out the staged trunk (One time and >>>> Update >>>> >>> before voting) >>>> >>> https://dist.apache.org/repos/dist/dev/incubator/mnemonic >>>> >>> This trunk is used to upload the release candidates before voting on >>>> >>> dev@list >>>> >>> >>>> >>> 6) Using SVN client to check out the release trunk (One time and >>>> Update >>>> >>> after voting) >>>> >>> https://dist.apache.org/repos/dist/release/incubator/mnemonic >>>> >>> This trunk is used to upload the releases after voting on >>>> general@list >>>> >>> >>>> >>> 7) Using SVN client to checkout the project status file (One time >>>> and >>>> >>> Update after releasing) >>>> >>> https://svn.apache.org/repos/asf/incubator/public/trunk/cont >>>> >>> ent/projects/mnemonic.xml >>>> >>> >>>> >>> 8) Replace the KEYS file contents with yours in both trunk of stage >>>> and >>>> >>> release and then commit the changes using SVN client >>>> >>> >>>> >>> 9) run the following command for auto release packaging on project >>>> >>> directory >>>> >>> $./build-tools/release.sh <current release version> <next release >>>> >>> version> >>>> >>> <candidate Id> >>>> >>> for example >>>> >>> $./build-tools/release.sh 0.8.0 0.8.0 rc1 >>>> >>> Note that usually we use the same current version in above command >>>> as we >>>> >>> cannot predict whether or not have a new candidate for this release >>>> >>> before >>>> >>> voting >>>> >>> In this step, you may have to input your GPG password to allow gpg >>>> to >>>> >>> sign >>>> >>> off artifacts using your private key >>>> >>> >>>> >>> 10) Prepare the new release candidate folder on stage trunk >>>> >>> please duplicate a folder from latest release candidate on stage >>>> trunk >>>> >>> and >>>> >>> rename it as current release candidate. >>>> >>> for example: 0.8.0-incubating-rc1 >>>> >>> and then empty the src folder >>>> >>> >>>> >>> 11) Update the CHANGES.txt for current release candidate on stage >>>> trunk >>>> >>> a) open the JIRA for Mnemonic project >>>> >>> b) in the overview, click the "Versions" >>>> >>> c) click the latest version that needs to be release, for example >>>> >>> "0.8.0-incubating" >>>> >>> d) click the button "Release Notes" on top-right >>>> >>> e) copy the Text between "Configure Release Notes" and "Edit/Copy >>>> Release >>>> >>> Notes" >>>> >>> f) open CHANGES.txt and replace all contents with the one just >>>> copied >>>> >>> >>>> >>> 12) Upload packaged artifacts from Linux box >>>> >>> Please use tools e.g. SCP to download all artifacts suffixed with >>>> >>> *.tar.gz >>>> >>> under target/ folder into the src folder of staged trunk >>>> >>> >>>> >>> 13) Commit the whole new release candidate folder in the staged >>>> trunk >>>> >>> using the SVN client to commit it all >>>> >>> >>>> >>> 14) Prepare a voting mail for dev@list voting >>>> >>> Please refer to the latest vote mail in dev@list >>>> >>> >>>> >>> 15) Report the voting results on dev@list >>>> >>> if not pass, please prepare next release candidate after issues >>>> fixed >>>> >>> >>>> >>> 16) Prepare a voting mail for general@list voting >>>> >>> Please refer to the latest vote mail in general@list >>>> >>> >>>> >>> 17) Report the voting results on general@list >>>> >>> if not pass, please prepare next release candidate after issues >>>> fixed >>>> >>> >>>> >>> 18) Submit the voted release candidate to release trunk >>>> >>> a) Please copy the release candidate from staged trunk to release >>>> trunk >>>> >>> b) and then remove the rc[x] suffix of the folder, for example, >>>> >>> 0.8.0-incubating-rc1 to 0.8.0-incubating >>>> >>> c) commit your new folder into SVN repos using SVN client >>>> >>> >>>> >>> 19) Update the project status file for the new releasing >>>> >>> Insert a new xml element to mnemonic.xml for new release >>>> >>> for example: "<li>2017-xx-xx the eighth official release.</li>" >>>> >>> and then commit it using SVN client >>>> >>> >>>> >>> Please also improve it or correct it if any issue, Thanks! >>>> >>> >>>> >>> Very truly yours >>>> >>> +Gary >>>> >>> >>>> >> >>>> >> >>>> > >>>> > >>>> > -- >>>> > -Debo~ >>>> > >>>> >>> >>> >> >> >> -- >> -Debo~ >> > >