It is step-by-step instruction for Ignite 2.x releases.
The first step to be done to enter scope finalization phase it to create a branch in Ignite code base (origin). This moment be precisely the same with the start of P1.1
Create release branch, e.g ignite-2.8, push it to the ASF repository
Run TC tests (on the appropriate branch), use https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteTests24Java8_RunAll or https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteTests24Java8_RunAllNightly
Estimate state of TC, check failures history (if any).
Create scheduled build triggers for daily Run All (Nightly) run. Usually, triggers are set up using Apache Ignite TeamCity Bot (triggering of builds there depends on agent availability). Use an intellectual trigger to trigger release branch adaptively, or ask on the dev. list to add.
Following section describes preparation of phase 4-Voting of Release Process.
4.0.1. Collect Release Notes (this step is manual now). Check all completed tickets from the release page. Ticket may or may not have release notes, and this depends on if it is reasonable to mention change for users.
4.0.2. Optionally you may ask for review of resulting release notes on the list.
4.0.3. Update RELEASE_NOTES.txt and commit Release Notes changes into master and a release branch.
4.1.1. Run [RELEASES] Apache Ignite / Main [1] Release Build for ignite-x.y or for ignite-x.y.z. branch. You will need to enter version number (value if x.y.0 or x.y.z), and specify release candidate number. For testing purposes it is recommended to use rc0. You may several times re-build same rc- number.
4.1.2.Download and unzip release archive. It can be found at "Artifacts" tab on build page.
~/download:[]$ unzip release-2.7.0-rc0.zip
Run vote scripts to prepare RC before voting. You may skip steps 4.2.1 & step 4.2.2 in case you want to run some testing of release. In case release build it made for testing purposes, go to step 3 in this section.
~/download/release:[]$ ./vote_1\[git\]create_rc_tag.sh Preparing vote 2.7.0-rc0 Removing obsolete tag... 2.7.0 -rc0 Deleted tag '2.7.0-rc0' (was b2119988f0) Username for 'https://git-wip-us.apache.org': <your apache username here> Password for 'https://nizhikov@git-wip-us.apache.org': <your apache password here> To https://git-wip-us.apache.org/repos/asf/ignite - [deleted] 2.7.0-rc0 On branch master Your branch is ahead of 'my/master' by 2 commits. (use "git push" to publish your local commits) nothing to commit, working tree clean Creating new tag... Username for 'https://gitbox.apache.org': <your apache username here> Password for 'https://nizhikov@gitbox.apache.org': <your apache password here> Counting objects: 1, done. Writing objects: 100% (1/1), 166 bytes | 166.00 KiB/s, done. Total 1 (delta 0), reused 0 (delta 0) To https://gitbox.apache.org/repos/asf/ignite * [new tag] 2.7.0-rc0 -> 2.7.0-rc0 ====================================================== RC tag should be created. Please check results at https://gitbox.apache.org/repos/asf?p=ignite.git
Please, check corresponding git tag is created and is available in ASF repository: https://gitbox.apache.org/repos/asf?p=ignite.git;a=tags
Note: If you've already uploaded stagin release, you should remove it from nexus - https://repository.apache.org/#stagingRepositories
~/download/release:[]$ ./vote_2\[mvn\]\[pgp\]deploy_to_staging.sh Preparing vote 2.7.0-rc0 Uploading ./org/apache/ignite/ignite-spark (1 of 53). Uploading ./org/apache/ignite/ignite-clients (2 of 53). ... Uploading ./org/apache/ignite/ignite-mqtt (53 of 53). Uploaded ====================================================== Maven staging should be created Please check results at https://repository.apache.org/#stagingRepositories Don't forget to close staging with proper comment
Go to Nexus UI https://repository.apache.org/#stagingRepositories, login using Apache credentials and close repository. Close is a heavy background process, which makes repository visible for others. Provide some comment for closing repository, e.g. `Repository for Apache Ignite 2.7.5 - RC2`. After some time check if repository was closed successfully.
? Probably this build step will be migrated to TC and automated
Note: This script is locale specific. You should execute it on the en locale
~/download/release:[]$ ./vote_3_step_1\[packages\]build.sh ... dpkg-deb: building package 'apache-ignite' in '../apache-ignite_2.7.0-1_all.deb'. copied '/tmp/tmp.rEePHrMMWU/apache-ignite_2.7.0-1_all.deb' -> '/home/dragon/download/release/packaging/apache-ignite_2.7.0-1_all.deb' удалён '/tmp/tmp.rEePHrMMWU/apache-ignite_2.7.0-1_all.deb' Removing temporary work directories: /tmp/tmp.rEePHrMMWU === Run time: 0h:00m:36s === packaging/apache-ignite-2.7.0-1.noarch.rpm: Processing packaging/apache-ignite_2.7.0-1_all.deb... gpg: все значения, переданные в '--default-key', игнорируются Signed deb packaging/apache-ignite_2.7.0-1_all.deb mkdir: создан каталог 'packaging/pkg' renamed 'packaging/apache-ignite-2.7.0-1.noarch.rpm' -> 'packaging/pkg/apache-ignite-2.7.0-1.noarch.rpm' renamed 'packaging/apache-ignite_2.7.0-1_all.deb' -> 'packaging/pkg/apache-ignite_2.7.0-1_all.deb' dragon:~/download/release:[]$ ./vote_3_step_2\[pgp\]sign_artifacts.sh # Starting GPG Agent # Signing ./svn/vote/apache-ignite-fabric-2.7.0-bin.zip Signing ./svn/vote/apache-ignite-2.7.0-src.zip Signing ./svn/vote/apache-ignite-hadoop-2.7.0-bin.zip Signed OK. =============================================== Artifacts should be signed Please check results at ./svn/vote Each file should have corresponding *.asc file NOTE: Package files are not signed because they are meant to be stored in Bintray
~/download/release:[]$ ./vote_3_step_2\[pgp\]sign_artifacts.sh # Starting GPG Agent # Signing ./svn/vote/apache-ignite-fabric-2.7.0-bin.zip Signing ./svn/vote/apache-ignite-2.7.0-src.zip Signing ./svn/vote/apache-ignite-hadoop-2.7.0-bin.zip Signed OK. =============================================== Artifacts should be signed Please check results at ./svn/vote Each file should have corresponding *.asc file NOTE: Package files are not signed because they are meant to be stored in Bintray
~/download/release:[]$ ./vote_3_step_3\[svn\]deploy_artifacts.sh RC 2.7.0-rc0 Добавляю (бинарный) svn/vote/apache-ignite-2.7.0-src.zip Добавляю svn/vote/apache-ignite-2.7.0-src.zip.asc Добавляю svn/vote/apache-ignite-2.7.0-src.zip.sha512 Добавляю (бинарный) svn/vote/apache-ignite-fabric-2.7.0-bin.zip Добавляю svn/vote/apache-ignite-fabric-2.7.0-bin.zip.asc Добавляю svn/vote/apache-ignite-fabric-2.7.0-bin.zip.sha512 Добавляю (бинарный) svn/vote/apache-ignite-hadoop-2.7.0-bin.zip Добавляю svn/vote/apache-ignite-hadoop-2.7.0-bin.zip.asc Добавляю svn/vote/apache-ignite-hadoop-2.7.0-bin.zip.sha512 Committing transaction... Committed revision 29664. Добавляю (бинарный) packaging/pkg/apache-ignite-2.7.0-1.noarch.rpm ...
Vote - http://apache-ignite-developers.2346864.n4.nabble.com/VOTE-Apache-Ignite-2-7-0-RC2-td38788.html
Vote accepted - http://apache-ignite-developers.2346864.n4.nabble.com/RESULT-VOTE-Apache-Ignite-2-6-0-Release-RC1-td32561.html#a32608
Release announce - http://apache-ignite-users.70518.x6.nabble.com/ANNOUNCE-Apache-Ignite-2-6-0-Released-td22760.html
release_1[svn]move_binaries.sh
dragon:~/download/rc2:[]$ ./release_1\[svn\]move_binaries.sh # Releasing 2.7.0-rc2 :: Binaries # Committing transaction... Committed revision 31329. ========================================================= Artifacts should be moved to Apache Ignite's release site Please check results at: * binaries: https://apache.org/dist/ignite/2.7.0