THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
Steps to sign a release:
- As a release manager, I believe you should have created signing key by following Apache documentation (https://www.apache.org/dev/openpgp.html#key-gen-generate-key) In this example I am considering 0.6.0-incubating is the release branch and current working directory is /home/user1.
- Prepare the release notes in Release Folders
- Clone release branch with command
Code Block | ||
---|---|---|
| ||
# cd /home/user1
# git clone -b 0.6.0-incubating --single-branch https://git-wip-us.apache.org/repos/asf/incubator-fineract.git apache-fineract-0.6.0-incubating-src |
- Make sure build is happening and all integration tests are passed by following steps defined in readme.md
- Create a binary directory with release version under /home/user1/. In this example the directory name is apache-fineract-0.6.0-incubating-binary
- Build war file and copy into binary directory. Extract LICENSE, NOTICE, DISCLAIMER files from fineract-provider.war and place them in binary directory.
- Now create a tar file of binary directory with below command. This command will create apache-fineract-0.6.0-incubating-binary.tar.gz file in /home/user1 directory.
Code Block | ||
---|---|---|
| ||
# cd /home/user1
# tar -zcvf apache-fineract-0.6.0-incubating-binary.tar.gz apache-fineract-0.6.0-incubating-binary |
- Now move to apache-fineract-0.6.0-incubating-src and remove all git configuration directories/files. Remove bin, catalina.base_IS_UNDEFINED, build directories from fineract-provider directory
- Remove gradle wrapper jar file from apache-fineract-0.6.0-incubating/fineract-provider/gradle/wrapper
- Remove LICENSE_RELEASE, NOTICE_RELEASE files. Rename LICENSE_SOURCE TO LICENSE and NOTICE_SOURCE to NOTICE. Remove binary directory from licenses directory.
- Now create source tar file with below command. This command with create apache-fineract-0.6.0-incubating-src.tar.gz file in /home/user1 directory.
Code Block | ||
---|---|---|
| ||
# cd /home/user1
# tar -zcvf apache-fineract-0.6.0-incubating-src.tar.gz apache-fineract-0.6.0-incubating-src
|
- Next step is to create detached signature, checksum with MD5 and SHA with the following commands
Code Block | ||
---|---|---|
| ||
# cd /home/user1
# gpg --armor --output apache-fineract-0.6.0-incubating-src.tar.gz.asc --detach-sig apache-fineract-0.6.0-incubating-src.tar.gz
# gpg --print-md MD5 apache-fineract-0.6.0-incubating-src.tar.gz > apache-fineract-0.6.0-incubating-src.tar.gz.md5
# gpg --print-md SHA512 apache-fineract-0.6.0-incubating-src.tar.gz > apache-fineract-0.6.0-incubating-src.tar.gz.sha
# gpg --armor --output apache-fineract-0.6.0-incubating-binary.tar.gz.asc --detach-sig apache-fineract-0.6.0-incubating-binary.tar.gz
# gpg --print-md MD5 apache-fineract-0.6.0-incubating-binary.tar.gz > apache-fineract-0.6.0-incubating-binary.tar.gz.md5
# gpg --print-md SHA512 apache-fineract-0.6.0-incubating-binary.tar.gz > apache-fineract-0.6.0-incubating-binary.tar.gz.sha |
- Finally create a directory with release name (0.6.0-incubating in this example) in https://dist.apache.org/repos/dist/dev/incubator/fineract and add the following files in this new directory.
- apache-fineract-0.6.0-incubating-binary.tar.gz.sha
- apache-fineract-0.6.0-incubating-binary.tar.gz
- apache-fineract-0.6.0-incubating-binary.tar.gz.asc
- apache-fineract-0.6.0-incubating-binary.tar.gz.md5
- apache-fineract-0.6.0-incubating-src.tar.gz.sha
- apache-fineract-0.6.0-incubating-src.tar.gz
- apache-fineract-0.6.0-incubating-src.tar.gz.asc
- apache-fineract-0.6.0-incubating-src.tar.gz.md5
- Next step is to drop mail to dev@fineract.incubator.apache.org about release approval. Once we get sufficient votes, then drop a mail to general@incubator.apache.org
- Once release is approved then announce the release to the community.