Table of Contents |
---|
Excerpt |
---|
This page intended to give some instructions for a release manager who is not familiar with Release Process internals. It is step-by-step instruction for Ignite 2.x releases. |
...
Following setup is performed only once. Check README.txt from https://github.com/apache/ignite-release/tree/master/scripts This readme file contains some additional requirement and setup steps.
1. If you don’t have your Apache key set up, please see https://www.apache.org/dev/openpgp.html#home on how to generate a new key.
Steps to be followed:
2. Export key to Apache SVN. See section 'Create/Import your pgp secret key' in Readme.txt in https://github.com/apache/ignite-release/tree/master/scripts
Steps to be followed:
No Format |
---|
gpg --list-sigs 612654F7 >> KEYS
gpg --armor --export 612654F7 >> KEYS |
Export the key to a Public Key Server
To publish key follow instructions from https://www.apache.org/dev/openpgp.html#publish-in-web-space
You may use
No Format |
---|
gpg --send-key 612654F7 |
alternatively, you
- can export key to an .asc file (gpg --armor --export 6F6F6F6F > key.asc)
- and submit the key file content manually to a public key server.
For example, at MIT server you can just paste asc file content to a text field and submit: to http://pgp.mit.edu/ or to http://keyserver.ubuntu.com/
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.
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.
Update RELEASE_NOTES.txt and commit Release Notes changes into master and a release branch.
Following section describes phase 4-Voting of Release Process.
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
~/download:[]$ unzip release-2.7.0-rc0.zip |
3. Run vote scripts:
You may skip step 1 & step 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.
Step 1:
Code Block | ||||
---|---|---|---|---|
| ||||
~/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
...
Code Block | ||||
---|---|---|---|---|
| ||||
dragon:~/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
Code Block | ||||
---|---|---|---|---|
| ||||
dragon:~/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
dragon:~/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
...
language | bash |
---|---|
theme | Midnight |
...
Notes were integrated into the page: Release Process