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~

Reply via email to