Release Doris SDK
Release Doris SDK
Its code base is independent of the main Doris code base, located at:
Ready to Releaseβ
First, please refer to the release preparation document to prepare for the release.
Releasing to Mavenβ
Let's take the release of Doris Sdk v1.0.0 as an example.
1. Prepare 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:
- Doris Sdk version information: we can use the default, you can directly press Enter or enter the version you want. The version format is
{sdk.version}
, such as1.0.0
. - Release tag of Doris SDK: 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 SDK: 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-sdk
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-sdk-1.0.0-src/ | gzip > apache-doris-sdk-1.0.0-src.tar.gz
gpg -u xxx@apache.org --armor --output apache-doris-sdk-1.0.0-src.tar.gz.asc --detach-sign apache-doris-sdk-1.0.0-src.tar. gz
sha512sum apache-doris-sdk-1.14_2.12-1.0.0-src.tar.gz > apache-doris-sdk-1.0.0-src.tar.gz.sha512
Mac:
shasum -a 512 apache-doris-sdk-1.0.0-src.tar.gz > apache-doris-sdk-1.0.0-src.tar.gz.sha512
You end up with three files:
apache-doris-sdk-1.0.0-src.tar.gz
apache-doris-sdk-1.0.0-src.tar.gz.asc
apache-doris-sdk-1.0.0-src.tar.gz.sha512
Move these three files to the svn directory:
doris/doris-sdk/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-sdk
β βββ 1.0.0
β βββ apache-doris-sdk-1.0.0-src.tar.gz
β βββ apache-doris-sdk-1.0.0-src.tar.gz.asc
β βββ apache-doris-sdk-1.0.0-src.tar.gz.sha512
Among them, 1.2.3-rc01 is the directory of Doris main code, and doris-sdk/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-SDK 1.0.0
The git tag for the release:
https://github.com/apache/doris-sdk/releases/tag/1.0.0
Release Notes are here:
https://github.com/apache/doris-sdk/blob/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-sdk/1.0.0/
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
Switch to the doris sdk directory
mvn deploy
Afterwards you can see the snapshot version here:
https://repository.apache.org/content/repositories/snapshots/org/apache/doris/doris-sdk/