Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Steps headers added

...

P4-Voting. Preparation Steps

Following section describes preparation of phase 4-Voting of Release Process.

4.0. Prepare Release Notes

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. Prepare RC

...

on Teamcity

4.1.1.

Following section describes phase 4-Voting of Release Process.

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.
Image Modified

Code Block
languagebash
themeRDark
linenumberstrue
~/download:[]$ unzip release-2.7.0-rc0.zip

...

4.2. Sign and deploy RC using vote preparation scripts

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.

...

4.2.1. Run script to create VCS tag in git 

Code Block
languagebash
themeRDark
~/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

...


4.2.2. Create & close (publish) staging repository

Note: If you've already uploaded stagin release, you should remove it from nexus - https://repository.apache.org/#stagingRepositories

Code Block
languagebash
themeRDark

...

~/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

Step 3:
Note: This script is locale specific. You should execute it on the en locale

...

languagebash
themeRDark

...



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.

4.2.3.1. Build DEB/RPM packages

? 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

Code Block
languagebash
themeRDark
~/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
 


4.3.3.2. Sign artfacts

Code Block
languagebash
themeRDark
~/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

...


4.3.3.2. Deploy artfacts to SVN

Code Block
languagebash
themeRDark
~/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
...

...



    1. Compare with previous release:
      There are TC task to generate report with difference comparing current release with previous.

      https://ci.ignite.apache.org/viewType.html?buildTypeId=ApacheIgniteReleaseJava8_IgniteRelease72CheckFileConsistency
      You should run it and do sanity check for a changed files.
    2. See "Artifacts" tab to get task results.

...