Page tree
Skip to end of metadata
Go to start of metadata

1) Setup Phase

  

1.1 Prepare a Linux box

Please use the latest version of CentOS since you can refer to Dockerfile for the detail commands of Mnemonic dependencies deployment.

The Linux box could be a host, virtual machine or docker container.

 

1.1.4 Deploy deps. of Mnemonic devel.

Deploy all dependencies of Mnemonic development, please referring to the Dockerfile in Mnemonic project

For CentOS

https://github.com/apache/incubator-mnemonic/blob/master/docker/Dockerfile

For Ubuntu

https://github.com/apache/incubator-mnemonic/blob/master/docker-ubuntu/Dockerfile

 

1.1.1.1.1 Clone your forked Mnemonic project

NOTE: please add username as the prefix to your git URL.

 

1.1.1.1.1.1 Add Apache repository as upstream

NOTE: please add username as the prefix to your upstream git URL.

 

1.1.2.1 Prepare a release key

https://www.apache.org/dev/openpgp.html#generate-key

NOTE: Please use your Apache email address (<your_apache_id>@apache.org) to generate a GPG key for artifacts signing and the command "git config --get user.signingkey" should return the <gpg-key-id> of your signing key that you can find it using the command "gpg --list-keys" 

 

1.1.2.1.1 Submit the key fingerprint

https://id.apache.org


1.1.3.1 Checkout stage trunk

 

1.1.3.1.1 Update KEYS file on stage trunk

Append your generated public key to this KEYS file


1.1.3.2 Checkout release trunk


1.1.3.2.1 Update KEYS file on release trunk

Append your generated public key to this KEYS file


1.1.3.3 Checkout the Mnemonic project status page only

 

1.1.4.1 Configure Maven release account

Add following setting items into your private maven settings file, i.e. ~/m2/settings.xml

Please make sure you can login the following repository using above account info.

https://repository.apache.org

2) Release Phase

 

A Guide To Release Management During Incubation [http://incubator.apache.org/guides/releasemanagement.html]

 

2.1.1.1 Run auto release tool


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

 

2.1.1.1.1 Collect generated artifacts

Create a folder named <version>-incubating-rc<seqnum> e.g. 0.9.0-incubating-rc1 on the staged trunk and then copy all artifacts suffixed with *.tar.gz under target/ folder into the src folder.


2.1.1.1.1.1.1 Send vote mail to dev@list

SUBJECT : [VOTE] Release of Apache Mnemonic-<version>-incubating [rc<rc_number>]
TO : dev@mnemonic.incubator.apache.org

 

2.1.1.1.1.1.1.1 Collect and report vote result on dev@list

SUBJECT : [RESULT][VOTE] Release of Apache Mnemonic-<version>-incubating [rc<rc_number>]
TO : dev@mnemonic.incubator.apache.org

 

2.1.1.1.1.1.1.1.1 Send vote mail to general@list

SUBJECT : [VOTE] Release of Apache Mnemonic-<version>-incubating [rc<rc_number>]
TO : general@incubator.apache.org

 

 

2.1.1.1.1.1.1.1.1.1 Collect and report vote result on general@list

SUBJECT : [RESULT][VOTE] Release of Apache Mnemonic-<version>-incubating [rc<rc_number>]
TO : general@incubator.apache.org

Release manager can add binding votes from dev@list to this report.

2.1.1.1.1.1.1.1.1.1.2 Terminate GPG agent

 

2.1.1.1.1.1.1.1.1.1.1.2 Send out new release announcement

SUBJECT : [ANNOUNCE] Apache Mnemonic-<version>-incubating released
REPLY-TO : dev@mnemonic.incubator.apache.org
TO :
announce@apache.org,
dev@mnemonic.incubator.apache.org,
user@mnemonic.incubator.apache.org

 

2.1.1.1.1.1.1.1.1.1.1.3 Clean up SVN repositories after releasing a new version

Remove all release candidates from stage trunk and remove previous versions from release trunk, only leave the latest version in release trunk.

2.1.1.1.1.1.1.1.1.1.1.4 Update Website

Update the webpage https://mnemonic.incubator.apache.org/downloads/ to reflect the release of a new version. a new JIRA ticket could be created for this action.

Note: please make sure that the new release has been sync. to mirrored sites before updating.

2.1.1.1.1.1.1.1.1.1.1.1.1 Publish project status

Please log into the following page and then click the "Build now" to publish updated project status

https://builds.apache.org/view/H-L/view/Incubator/job/Incubator%20Site/


2.1.2 Start GPG agent


2.1.3 Collect version changes info.

a) Please open the Apache JIRA for Mnemonic project -- https://issues.apache.org/jira/browse/MNEMONIC
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 for current RC on stage trunk
g)   Copy this CHANGES.txt file to the release candidate folder on the staged trunk, please refer to section 2.1.1.1.1 Collect generated artifacts