Release Doris Shade
Release Doris Shade
Its code base is independent of the main Doris code base, located at:
Preparing for release
First, please refer to the release preparation document to prepare for the release.
Releasing to Maven
Let's take the release of Doris Shade v1.0.0 as an example.
1. Prepare the branch
Create a branch in the code base: 1.0.0-release, and checkout to this branch.
2. Release to Maven staging
Execute the following command to start generating release tags:
mvn release:clean
mvn release:prepare -DpushChanges=false
Among them, -DpushChanges=false
means that during the execution process, the newly generated branches and tags will not be pushed to the code base.
After executing the release:prepare
command, the following three pieces of information will be requested:
- Version information of Doris Shade: We can use the default, you can directly press Enter or enter the version you want. The version format is
{shade.version}
, such as1.0.0
. - Release tag of Doris Shade: The release process will generate a tag locally. We can use the default tag name, such as
1.0.0
. - The version number of the next version of Doris Shade: this version number is only used when generating local branches, and has no practical significance. We can fill in one according to the rules. For example, the current version to be released is:
1.0.0
, then fill in1.0.1-SNAPSHOT
for the next version number.
mvn release:prepare
may ask for a GPG passphrase. If there is gpg: no valid OpenPGP data found
error, you can execute export GPG_TTY=$(tty)
and try again.
After mvn release:prepare
is executed successfully, a tag and a branch will be generated locally. And the current branch will add two commits. The first commit corresponds to the newly generated tag, and the second is the next version of the branch. It can be viewed through git log
.
After the local tag is confirmed to be correct, the tag needs to be pushed to the code base:
git push upstream --tags
Where upstream points to the apache/doris-shade
codebase.
Finally, execute perform:
mvn release:perform
After successful execution, you can find the newly released version in https://repository.apache.org/#stagingRepositories:
Note that the .asc
signature file needs to be included.
If the operation is wrong. It is necessary to delete the local tag, the tag in the code base, and the two newly generated commits locally. And drop staging. Then perform the above steps again.
After checking, click the close
button in the figure to complete the staging release.
3. Prepare svn
Check out the svn repository:
svn co https://dist.apache.org/repos/dist/dev/doris/
Package tag source code, and generate signature file and sha256 verification file. Here we take 1.0.0
as an example. Other tag operations are the same
git archive --format=tar 1.14_2.12-1.0.0 --prefix=apache-doris-shade-1.0.0-src/ | gzip > apache-doris-shade-1.0.0-src.tar.gz
gpg -u xxx@apache.org --armor --output apache-doris-shade-1.0.0-src.tar.gz.asc --detach-sign apache-doris-shade-1.0.0-src.tar. gz
sha512sum apache-doris-shade-1.14_2.12-1.0.0-src.tar.gz > apache-doris-shade-1.0.0-src.tar.gz.sha512
Mac:
shasum -a 512 apache-doris-shade-1.0.0-src.tar.gz > apache-doris-shade-1.0.0-src.tar.gz.sha512
You end up with three files:
apache-doris-shade-1.0.0-src.tar.gz
apache-doris-shade-1.0.0-src.tar.gz.asc
apache-doris-shade-1.0.0-src.tar.gz.sha512
Move these three files to the svn directory:
doris/doris-shade/1.0.0/
The final svn directory structure is similar to:
├── 1.2.3-rc01
│ ├── apache-doris-1.2.3-src.tar.gz
│ ├── apache-doris-1.2.3-src.tar.gz.asc
│ ├── apache-doris-1.2.3-src.tar.gz.sha512
...
├── KEYS
├── doris-shade
│ └── 1.0.0
│ ├── apache-doris-shade-1.0.0-src.tar.gz
│ ├── apache-doris-shade-1.0.0-src.tar.gz.asc
│ └── apache-doris-shade-1.0.0-src.tar.gz.sha512
Among them, 1.2.3-rc01 is the directory of Doris main code, and doris-shade/1.0.0
is the content of this release.
Note, for the preparation of the KEYS file, please refer to the introduction in Release Preparation.
4. Voting
Initiate a vote in the dev@doris mail group, the template is as follows:
Hi all,
This is a call for the vote to release Apache Doris-Shade 1.0.0
The git tag for the release:
https://github.com/apache/doris-shade/releases/tag/doris-shade-1.0.0
Release Notes are here:
https://github.com/apache/doris-shade/blob/doris-shade-1.0.0/CHANGE-LOG.txt
Thanks to everyone who has contributed to this release.
The release candidates:
https://dist.apache.org/repos/dist/dev/doris/doris-shade/
KEYS file is available here:
https://downloads.apache.org/doris/KEYS
To verify and build, you can refer to the following link:
https://doris.apache.org/community/release-and-verify/release-verify
The vote will be open for at least 72 hours.
[ ] +1 Approve the release
[ ] +0 No opinion
[ ] -1 Do not release this package because ...
Completing the release
Please refer to the Complete Release document to complete the entire release process.
APPENDIX: Releasing TO SNAPSHOT
Snapshot is not an Apache Release version, it is only used for preview before release. After being discussed and approved by the PMC, the Snapshot version can be released
Change to the doris shade directory
mvn deploy
Afterwards you can see the snapshot version here:
https://repository.apache.org/content/repositories/snapshots/org/apache/doris/doris-shade/