update how to release doc (#8590)

* update how to release docs for staged website, updated email templates with checksums and docker

* fix typo

* review stuff

* review stuff

* hmm

* nope
This commit is contained in:
Clint Wylie 2019-10-02 08:51:25 -07:00 committed by Fangjin Yang
parent 0f7e0ff030
commit 0a20caf177
1 changed files with 243 additions and 124 deletions

View File

@ -25,15 +25,15 @@ First up in performing an official release of Apache Druid (incubating) is to an
### Create a release branch ### Create a release branch
Next up is creating the release branch off of master (or the previous release branch for a bug fix release). Name the branch for the release version that is being created, omitting the `druid` prefix that will appear on the release candidate and release tags: Next up is creating the release branch off of master (or the previous release branch for a bug fix release). Be sure to do this from the apache git repo, _not your fork_. Name the branch for the release version that is being created, omitting the `druid` prefix that will appear on the release candidate and release tags:
``` ```bash
$ git checkout origin/0.15.0-incubating $ git checkout origin/0.15.0-incubating
... ...
$ git checkout -b 0.15.1-incubating $ git checkout -b 0.15.1-incubating
``` ```
``` ```bash
$ git checkout origin/master $ git checkout origin/master
... ...
$ git checkout -b 0.16.0-incubating $ git checkout -b 0.16.0-incubating
@ -41,7 +41,7 @@ $ git checkout -b 0.16.0-incubating
Then push the branch to `origin`. If doing a quarterly release, it will also be necessary to bump the version in master to the next release snapshot: Then push the branch to `origin`. If doing a quarterly release, it will also be necessary to bump the version in master to the next release snapshot:
``` ```bash
$ mvn versions:set -DnewVersion=0.17.0-incubating-SNAPSHOT $ mvn versions:set -DnewVersion=0.17.0-incubating-SNAPSHOT
``` ```
@ -69,7 +69,7 @@ After your key has been propagated to public key servers, add your key fingerpri
The key fingerprint can be seen with `gpg --list-keys`, e.g.: The key fingerprint can be seen with `gpg --list-keys`, e.g.:
``` ```plaintext
... ...
pub rsa4096 2019-02-28 [SC] pub rsa4096 2019-02-28 [SC]
0495E031C35D132479C241EC9283C4921AC4483E 0495E031C35D132479C241EC9283C4921AC4483E
@ -84,14 +84,14 @@ If all goes well, your Apache account will be associated with that key, which yo
You will also need to add your key to our project KEYS file: https://dist.apache.org/repos/dist/release/incubator/druid/KEYS, this repo can be pulled with: You will also need to add your key to our project KEYS file: https://dist.apache.org/repos/dist/release/incubator/druid/KEYS, this repo can be pulled with:
``` ```bash
svn co https://dist.apache.org/repos/dist/release/incubator/druid $ svn co https://dist.apache.org/repos/dist/release/incubator/druid
``` ```
Add your entry to the file and commit: Add your entry to the file and commit:
``` ```bash
svn commit -m 'add key for jonwei@apache.org' $ svn commit -m 'add key for jonwei@apache.org'
``` ```
### Maven credentials ### Maven credentials
@ -190,77 +190,92 @@ Next create an issue in the Druid github to contain the release notes and allow
Once the release branch is good for an RC, you can build a new tag with: Once the release branch is good for an RC, you can build a new tag with:
``` ```bash
mvn -DreleaseVersion=0.15.1-incubating -DdevelopmentVersion=0.15.2-incubating-SNAPSHOT -Dtag=druid-0.15.1-incubating-rc2 -DpushChanges=false clean release:clean release:prepare $ mvn -DreleaseVersion=0.16.0-incubating -DdevelopmentVersion=0.16.1-incubating-SNAPSHOT -Dtag=druid-0.16.0-incubating-rc3 -DpushChanges=false clean release:clean release:prepare
``` ```
In this example it will create a tag, `druid-0.15.1-incubating-rc2`. If this release passes vote then we can add the final `druid-0.15.1-incubating` release tag later. In this example it will create a tag, `druid-0.16.0-incubating-rc3`. If this release passes vote then we can add the final `druid-0.16.0-incubating` release tag later.
**Retain the release.properties file! You will need it when uploading the Maven artifacts for the final release.** **Retain the release.properties file! You will need it when uploading the Maven artifacts for the final release.**
### Do a clean clone (so the source distribution does not pick up extra files) ### Do a clean clone (so the source distribution does not pick up extra files)
``` ```bash
git clone git@github.com:apache/incubator-druid.git druid-release $ git clone git@github.com:apache/incubator-druid.git druid-release
``` ```
### Switch to tag ### Switch to tag
``` ```bash
git checkout druid-0.15.1-incubating-rc2 $ git checkout druid-0.16.0-incubating-rc3
``` ```
### Build Artifacts ### Build Artifacts
``` ```bash
$ mvn clean install -Papache-release,dist,rat -DskipTests $ mvn clean install -Papache-release,dist,rat -DskipTests
``` ```
This should produce the following artifacts: This should produce the following artifacts:
``` ```plaintext
apache-druid-0.15.1-incubating-bin.tar.gz apache-druid-0.16.0-incubating-bin.tar.gz
apache-druid-0.15.1-incubating-bin.tar.gz.asc apache-druid-0.16.0-incubating-bin.tar.gz.asc
apache-druid-0.15.1-incubating-bin.tar.gz.sha512 apache-druid-0.16.0-incubating-bin.tar.gz.sha512
apache-druid-0.15.1-incubating-src.tar.gz apache-druid-0.16.0-incubating-src.tar.gz
apache-druid-0.15.1-incubating-src.tar.gz.asc apache-druid-0.16.0-incubating-src.tar.gz.asc
apache-druid-0.15.1-incubating-src.tar.gz.sha512 apache-druid-0.16.0-incubating-src.tar.gz.sha512
``` ```
You _might_ or _might not_ need to specify which key to use depending on your keychain, supply `-Dgpg.keyname=<your GPG key fingerprint>` to the `mvn install` command if required. You _might_ or _might not_ need to specify which key to use depending on your keychain, supply `-Dgpg.keyname=<your GPG key fingerprint>` to the `mvn install` command if required.
### Verify checksums ### Verify checksums
``` ```bash
$ diff <(shasum -a512 apache-druid-0.15.1-incubating-bin.tar.gz | cut -d ' ' -f1) <(cat apache-druid-0.15.1-incubating-bin.tar.gz.sha512 ; echo) $ diff <(shasum -a512 apache-druid-0.16.0-incubating-bin.tar.gz | cut -d ' ' -f1) <(cat apache-druid-0.16.0-incubating-bin.tar.gz.sha512 ; echo)
... ...
$ diff <(shasum -a512 apache-druid-0.15.1-incubating-src.tar.gz | cut -d ' ' -f1) <(cat apache-druid-0.15.1-incubating-src.tar.gz.sha512 ; echo) $ diff <(shasum -a512 apache-druid-0.16.0-incubating-src.tar.gz | cut -d ' ' -f1) <(cat apache-druid-0.16.0-incubating-src.tar.gz.sha512 ; echo)
``` ```
### Verify GPG signatures ### Verify GPG signatures
``` ```bash
$ gpg --verify apache-druid-0.15.1-incubating-bin.tar.gz.asc apache-druid-0.15.1-incubating-bin.tar.gz $ gpg --verify apache-druid-0.16.0-incubating-bin.tar.gz.asc apache-druid-0.16.0-incubating-bin.tar.gz
... ...
$ gpg --verify apache-druid-0.15.1-incubating-src.tar.gz.asc apache-druid-0.15.1-incubating-src.tar.gz $ gpg --verify apache-druid-0.16.0-incubating-src.tar.gz.asc apache-druid-0.16.0-incubating-src.tar.gz
``` ```
### Commit artifacts to SVN repo ### Commit artifacts to SVN repo
Checkout the dist/dev repo and add a directory for the new release candidate. The KEYS file in this repo is obsoleted and should not be used. Checkout the dist/dev repo and add a directory for the new release candidate. The KEYS file in this repo is obsoleted and should not be used.
``` ```bash
$ svn checkout https://dist.apache.org/repos/dist/dev/incubator/druid $ svn checkout https://dist.apache.org/repos/dist/dev/incubator/druid
``` ```
Copy the `src` and `bin` artifacts to a folder for the release version and add it to SVN and publish the artifacts: Copy the `src` and `bin` artifacts to a folder for the release version and add it to SVN and publish the artifacts:
``` ```bash
$ svn add 0.15.1-incubating-rc2 $ svn add 0.16.0-incubating-rc3
... ...
$ svn commit -m 'add 0.15.1-incubating-rc2 artifacts' $ svn commit -m 'add 0.16.0-incubating-rc3 artifacts'
``` ```
### Update druid.staged.apache.org
1. Pull https://github.com/apache/incubator-druid-website and https://github.com/apache/incubator-druid-website-src. These repositories should be in the same directory as your Druid repository that should have the release tag checked out.
2. From incubator-druid-website, checkout branch `asf-staging`.
3. From incubator-druid-website-src, run `./release.sh 0.16.0-incubating 0.16.0-incubating`, replacing `0.16.0-incubating` where the first argument is the release version and 2nd argument is commit-ish. This script will:
* checkout the tag of the Druid release version
* build the docs for that version into incubator-druid-website-src
* build incubator-druid-website-src into incubator-druid-website
* stage incubator-druid-website-src and incubator-druid-website repositories to git.
4. Make a PR to the src repo (https://github.com/apache/incubator-druid-website-src) for the release branch. Once the website PR is pushed to `asf-site`, https://druid.staged.apache.org/ will be updated near immediately with the new docs.
## Release candidates and voting ## Release candidates and voting
Until we graduate from incubation, releases have two stages of voting: Until we graduate from incubation, releases have two stages of voting:
@ -274,69 +289,108 @@ For the Druid community vote, send an email to dev@druid.apache.org, using somet
##### Subject ##### Subject
``` ```plaintext
[VOTE] Release Apache Druid (incubating) 0.15.1 [RC2] [VOTE] Release Apache Druid (incubating) 0.16.0 [RC3]
``` ```
##### Body ##### Body
``` ```plaintext
Hi all, Hi all,
I have created a build for Apache Druid (incubating) 0.15.1, release candidate 2. I have created a build for Apache Druid (incubating) 0.16.0, release
candidate 3.
This is a bug fix release that includes important fixes for Apache Zookeeper based segment loading, the Apache DataSketches (incubating) extension, and much more. You can read the proposed release notes here: Thanks for everyone who has helped contribute to the release! You can read
https://github.com/apache/incubator-druid/issues/8191 the proposed release notes here:
https://github.com/apache/incubator-druid/issues/8369
The release candidate has been tagged in GitHub as druid-0.15.1-incubating-rc2 (c698daab56a4b0612d6680b6359924653e938863), available here: The release candidate has been tagged in GitHub as
druid-0.16.0-incubating-rc3 (54d29e438a4df34d75e2385af6cefd1092c4ebb3),
https://github.com/apache/incubator-druid/releases/tag/druid-0.15.1-incubating-rc2 available here:
https://github.com/apache/incubator-druid/releases/tag/druid-0.16.0-incubating-rc3
The artifacts to be voted on are located here: The artifacts to be voted on are located here:
https://dist.apache.org/repos/dist/dev/incubator/druid/0.15.1-incubating-rc2/ https://dist.apache.org/repos/dist/dev/incubator/druid/0.16.0-incubating-rc3/
Staged druid.apache.org website documentation is available here:
https://druid.staged.apache.org/docs/0.16.0-incubating/design/index.html
A Docker image containing the binary of the release candidate can be
retrieved via:
docker pull apache/incubator-druid:0.16.0-incubating-rc3
artifact checksums
src:
1f25c55e83069cf7071a97c1e0d56732437dbac4ef373ed1ed72b5b618021b74c107269642226e80081354c8da2e92dc26f1541b01072a4720fd6cfe8dc161a8
bin:
0c4b71f077e28d2f4d3bc3f072543374570b98ec6a1918a5e1828e1da7e3871b5efb04070a8bcdbc172a817e43254640ce28a99757984be7d8dd3d607f1d870e
docker: df9b900d3726ce123a5c054768da1ea08eba6efe635ced5abc3ad72d6c835e2c
Release artifacts are signed with the following key: Release artifacts are signed with the following key:
https://people.apache.org/keys/committer/cwylie.asc. https://people.apache.org/keys/committer/cwylie.asc
This key and the key of other committers can also be found in the project's KEYS file here: This key and the key of other committers can also be found in the project's
KEYS file here:
https://dist.apache.org/repos/dist/release/incubator/druid/KEYS https://dist.apache.org/repos/dist/release/incubator/druid/KEYS
(If you are a committer, please feel free to add your own key to that file by following the instructions in the file's header.) (If you are a committer, please feel free to add your own key to that file
by following the instructions in the file's header.)
Verify checksums: Verify checksums:
diff <(shasum -a512 apache-druid-0.15.1-incubating-bin.tar.gz | cut -d ' ' -f1) <(cat apache-druid-0.15.1-incubating-bin.tar.gz.sha512 ; echo) diff <(shasum -a512 apache-druid-0.16.0-incubating-src.tar.gz | \
cut -d ' ' -f1) \
<(cat apache-druid-0.16.0-incubating-src.tar.gz.sha512 ; echo)
diff <(shasum -a512 apache-druid-0.15.1-incubating-src.tar.gz | cut -d ' ' -f1) <(cat apache-druid-0.15.1-incubating-src.tar.gz.sha512 ; echo) diff <(shasum -a512 apache-druid-0.16.0-incubating-bin.tar.gz | \
cut -d ' ' -f1) \
<(cat apache-druid-0.16.0-incubating-bin.tar.gz.sha512 ; echo)
Verify signatures: Verify signatures:
gpg --verify apache-druid-0.15.1-incubating-bin.tar.gz.asc apache-druid-0.15.1-incubating-bin.tar.gz gpg --verify apache-druid-0.16.0-incubating-src.tar.gz.asc \
apache-druid-0.16.0-incubating-src.tar.gz
gpg --verify apache-druid-0.15.1-incubating-src.tar.gz.asc apache-druid-0.15.1-incubating-src.tar.gz gpg --verify apache-druid-0.16.0-incubating-bin.tar.gz.asc \
apache-druid-0.16.0-incubating-bin.tar.gz
Please review the proposed artifacts and vote. Note that Apache has specific requirements that must be met before +1 binding votes can be cast by PMC members. Please refer to the policy at http://www.apache.org/legal/release-policy.html#policy for more details. Please review the proposed artifacts and vote. Note that Apache has
specific requirements that must be met before +1 binding votes can be cast
by PMC members. Please refer to the policy at
http://www.apache.org/legal/release-policy.html#policy for more details.
As part of the validation process, the release artifacts can be generated from source by running: As part of the validation process, the release artifacts can be generated
mvn clean install -Papache-release,dist from source by running:
mvn clean install -Papache-release,dist -Dgpg.skip
The RAT license check can be run from source by: The RAT license check can be run from source by:
mvn apache-rat:check -Prat mvn apache-rat:check -Prat
This vote will be open for at least 72 hours. The vote will pass if a majority of at least three +1 PMC votes are cast. This vote will be open for at least 72 hours. The vote will pass if a
majority of at least three +1 PMC votes are cast.
Once the vote has passed, the second stage vote will be called on the Apache Incubator mailing list to get approval from the Incubator PMC. Once the vote has passed, the second stage vote will be called on the
Apache Incubator mailing list to get approval from the Incubator PMC.
[ ] +1 Release this package as Apache Druid (incubating) 0.15.1 [ ] +1 Release this package as Apache Druid (incubating) 0.16.0
[ ] 0 I don't feel strongly about it, but I'm okay with the release [ ] 0 I don't feel strongly about it, but I'm okay with the release
[ ] -1 Do not release this package because... [ ] -1 Do not release this package because...
Thanks! Thanks!
Apache Druid (incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. Apache Druid (incubating) is an effort undergoing incubation at The Apache
Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is
required of all newly accepted projects until a further review indicates
that the infrastructure, communications, and decision making process have
stabilized in a manner consistent with other successful ASF projects. While
incubation status is not necessarily a reflection of the completeness or
stability of the code, it does indicate that the project has yet to be
fully endorsed by the ASF.
``` ```
Anyone can vote on a release. When voting, you should list out what exactly you checked and note whether or not your vote is binding. (It is binding if you are on the Druid PPMC, otherwise it is non-binding.) A sample vote would look like: Anyone can vote on a release. When voting, you should list out what exactly you checked and note whether or not your vote is binding. (It is binding if you are on the Druid PPMC, otherwise it is non-binding.) A sample vote would look like:
``` ```plaintext
+1 (binding) +1 (binding)
- Proper NOTICE, LICENSE, DISCLAIMER files are present in both src and bin packages. - Proper NOTICE, LICENSE, DISCLAIMER files are present in both src and bin packages.
@ -348,7 +402,7 @@ Anyone can vote on a release. When voting, you should list out what exactly you
If you find something wrong with a release that should block it, vote -1 and explain why. For example: If you find something wrong with a release that should block it, vote -1 and explain why. For example:
``` ```plaintext
-1, because the src tarball appears to accidentally have binary jar files in it: -1, because the src tarball appears to accidentally have binary jar files in it:
- foo.jar - foo.jar
@ -368,26 +422,23 @@ Once the Druid community vote passes (or fails), close the vote with a thread li
##### Subject ##### Subject
``` ```plaintext
[RESULT][VOTE] Release Apache Druid (incubating) 0.15.1 [RC2] [RESULT][VOTE] Release Apache Druid (incubating) 0.16.0 [RC3]
``` ```
##### Body ##### Body
``` ```plaintext
Thanks to everyone who participated in the release! The results are as follows: Thanks to everyone who participated in the vote! The results are as follows:
Clint Wylie: +1 (non-binding) Clint Wylie: +1 (non-binding)
Mingming Qiu: +1 (non-binding) Jihoon Son: +1 (binding)
Gian Merlino: +1 (binding) Furkan KAMACI: +1 (non-binding)
Jon Wei: +1 (binding) Julian Hyde: +1 (binding)
Surekha Saharan: +1 (non-binding)
Benedict Jin: +1 (non-binding)
Nishant Bangarwa: +1 (binding)
Xavier Léauté: 0 (binding)
David Lim: +1 (binding) David Lim: +1 (binding)
Surekha Saharan: +1 (non-binding)
I will be starting a voting thread on the general incubator mailing list to request an IPMC vote. ...
``` ```
### IPMC vote ### IPMC vote
@ -409,60 +460,103 @@ Here is the IPMC vote template. Please note that "6190EEFC" in the template is y
##### Subject ##### Subject
``` ```plaintext
[VOTE] Release Apache Druid (incubating) 0.15.1 [RC2] [VOTE] Release Apache Druid (incubating) 0.16.0 [RC3]
``` ```
##### Body ##### Body
``` ```plaintext
Hi IPMC, Hi IPMC,
The Apache Druid community has voted on and approved a proposal to release Apache Druid (incubating) 0.15.1 (rc2). The Apache Druid community has voted on and approved a proposal to release
Apache Druid (incubating) 0.16.0 (rc3).
We now kindly request the Incubator PMC members review and vote on this incubator release. We now kindly request the Incubator PMC members review and vote on this
incubator release.
Apache Druid (incubating) is a high performance analytics data store for event-driven data. Apache Druid (incubating) is a high performance analytics data store for
event-driven data.
The community voting thread can be found here: The community voting thread can be found here:
https://lists.apache.org/thread.html/142e40f9959ad56e0da73950265b7ef7e64913be8ada3645ecd453af@%3Cdev.druid.apache.org%3E https://lists.apache.org/thread.html/ea2f70b0533f403215288ae35294adc59f9ab33accabd9048eeb082f@%3Cdev.druid.apache.org%3E
We have already received 2 +1 votes from IPMC members (Julian Hyde and
Furkan KAMACI) during our community vote which I believe can be carried
over to this vote as +1 (binding).
During our previous IPMC release vote, a concern was raised about
licensing/distribution of a file containing example data, and we have
raised https://issues.apache.org/jira/browse/LEGAL-480 to get to the bottom
of this. The discussion is currently ongoing there, but at this point it
seems possible that including this file might end up being acceptable, so I
have decided to proceed with this vote now. If it turns out that we cannot
distribute this file then we intend to switch to a different example data
file in a future release.
The release notes are available here: The release notes are available here:
https://github.com/apache/incubator-druid/issues/8191 https://github.com/apache/incubator-druid/issues/8369
The release candidate has been tagged in GitHub as druid-0.15.1-incubating-rc2, available here: The release candidate has been tagged in GitHub as
https://github.com/apache/incubator-druid/tree/druid-0.15.1-incubating-rc2 (c698daa) druid-0.16.0-incubating-rc3 (54d29e438a4df34d75e2385af6cefd1092c4ebb3),
available here:
https://github.com/apache/incubator-druid/releases/tag/druid-0.16.0-incubating-rc3
The artifacts to be voted on are located here: The artifacts to be voted on are located here:
https://dist.apache.org/repos/dist/dev/incubator/druid/0.15.1-incubating-rc2/ https://dist.apache.org/repos/dist/dev/incubator/druid/0.16.0-incubating-rc3/
A staged Maven repository is available for review at: A staged Maven repository is available for review at:
https://repository.apache.org/content/repositories/orgapachedruid-1008/ https://repository.apache.org/content/repositories/orgapachedruid-1009/
A Docker image containing the binary of the release candidate can be
retrieved via:
docker pull apache/incubator-druid:0.16.0-incubating-rc3
artifact checksums
src:
1f25c55e83069cf7071a97c1e0d56732437dbac4ef373ed1ed72b5b618021b74c107269642226e80081354c8da2e92dc26f1541b01072a4720fd6cfe8dc161a8
bin:
0c4b71f077e28d2f4d3bc3f072543374570b98ec6a1918a5e1828e1da7e3871b5efb04070a8bcdbc172a817e43254640ce28a99757984be7d8dd3d607f1d870e
docker: df9b900d3726ce123a5c054768da1ea08eba6efe635ced5abc3ad72d6c835e2c
Release artifacts are signed with the key (6190EEFC): Release artifacts are signed with the key (6190EEFC):
https://people.apache.org/keys/committer/cwylie.asc https://people.apache.org/keys/committer/cwylie.asc
This key and the key of other committers can be found in the project's KEYS file here: This key and the key of other committers can be found in the project's KEYS
file here:
https://www.apache.org/dist/incubator/druid/KEYS https://www.apache.org/dist/incubator/druid/KEYS
As part of the validation process, the release artifacts can be generated from source by running: Staged druid.apache.org website documentation is available here:
https://druid.staged.apache.org/docs/0.16.0-incubating/design/index.html
As part of the validation process, the release artifacts can be generated
from source by running:
mvn clean install -Papache-release,dist mvn clean install -Papache-release,dist
The RAT license check can be run from source by: The RAT license check can be run from source by:
mvn apache-rat:check -Prat mvn apache-rat:check -Prat
This vote will be open for at least 72 hours. The vote will pass if a majority of at least three +1 IPMC votes are cast. This vote will be open for at least 72 hours. The vote will pass if a
majority of at least three +1 IPMC votes are cast.
[ ] +1 Release this package as Apache Druid (incubating) 0.15.1 [ ] +1 Release this package as Apache Druid (incubating) 0.16.0
[ ] 0 I don't feel strongly about it, but I'm okay with the release [ ] 0 I don't feel strongly about it, but I'm okay with the release
[ ] -1 Do not release this package because... [ ] -1 Do not release this package because...
Thank you IPMC! We appreciate your efforts in helping the Apache Druid community to validate this release. Thank you IPMC! We appreciate your efforts in helping the Apache Druid
community to validate this release.
On behalf of the Apache Druid Community, On behalf of the Apache Druid Community,
Clint Clint
Apache Druid (incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. Apache Druid (incubating) is an effort undergoing incubation at The Apache
Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is
required of all newly accepted projects until a further review indicates
that the infrastructure, communications, and decision making process have
stabilized in a manner consistent with other successful ASF projects. While
incubation status is not necessarily a reflection of the completeness or
stability of the code, it does indicate that the project has yet to be
fully endorsed by the ASF.
``` ```
### Cancelling a vote ### Cancelling a vote
@ -490,31 +584,32 @@ Once a release candidate has passed the incubator PMC vote, you'll need to do th
##### Subject ##### Subject
``` ```plaintext
[RESULT] [VOTE] Release Apache Druid (incubating) 0.15.1 [RC2] [RESULT] [VOTE] Release Apache Druid (incubating) 0.16.0 [RC3]
``` ```
##### Body ##### Body
``` ```plaintext
Hi all, Hi all,
The vote to release Apache Druid (incubating) 0.15.1 has passed with 3 +1 binding votes: The vote to release Apache Druid (incubating) 0.16.0 has passed with 3 +1
binding votes:
Justin Mclean
Julian Hyde Julian Hyde
Furkan KAMACI Furkan KAMACI
Gian Merlino
and 1 non-binding +1 vote:
William Guo
Vote thread: Vote thread:
https://lists.apache.org/thread.html/f97a3743e441747552f54dd61148366d808883e33d55cab0d5161770@<general.incubator.apache.org> https://lists.apache.org/thread.html/a2eff0f2ef609a8960265d1f32c27748c5ea69bd00f511eca2022e0f@%3Cgeneral.incubator.apache.org%3E
Thank you to the above IPMC members for taking the time to review and provide guidance on our release!
We will proceed with publishing the approved artifacts and sending out the appropriate announcements in the coming days. Thank you to the above IPMC members for taking the time to review and
provide guidance on our release!
We will proceed with publishing the approved artifacts and sending out the
appropriate announcements in the coming days.
On behalf of the Apache Druid Community, On behalf of the Apache Druid Community,
Clint Clint
@ -523,26 +618,26 @@ Clint
Tag the rc that passed vote as the release tag and push to github. Tag the rc that passed vote as the release tag and push to github.
``` ```bash
$ git checkout druid-0.15.1-incubating-rc2 $ git checkout druid-0.16.0-incubating-rc3
$ git tag druid-0.15.1-incubating $ git tag druid-0.16.0-incubating
$ git push origin/druid-0.15.1-incubating $ git push origin/druid-0.16.0-incubating
``` ```
### Publish release artifacts to SVN ### Publish release artifacts to SVN
The final release artifacts are kept in the following repo (same as KEYS): The final release artifacts are kept in the following repo (same as KEYS):
``` ```bash
svn checkout https://dist.apache.org/repos/dist/release/incubator/druid $ svn checkout https://dist.apache.org/repos/dist/release/incubator/druid
``` ```
Create a new directory for the release and put the artifacts there. Create a new directory for the release and put the artifacts there.
``` ```bash
$ svn add 0.15.1-incubating $ svn add 0.16.0-incubating
... ...
$ svn commit -m 'add 0.15.1-incubating artifacts' $ svn commit -m 'add 0.16.0-incubating artifacts'
``` ```
### Publish the staged Maven repo ### Publish the staged Maven repo
@ -566,17 +661,17 @@ http://www.apache.org/legal/release-policy.html#release-announcements
```yaml ```yaml
druid_versions: druid_versions:
- release: 0.16
versions:
- version: 0.16.0-incubating
date: 2019-09-24
- release: 0.15 - release: 0.15
versions: versions:
- version: 0.15.1-incubating - version: 0.15.1-incubating
date: 2019-08-15 date: 2019-08-15
- release: 0.14
versions:
- version: 0.14.2-incubating
date: 2019-05-27
``` ```
3. From incubator-druid-website-src, run `npm run build-release -- 0.16.0-incubating`, replacing `0.16.0-incubating` with the Druid release version. This script will: 3. From incubator-druid-website-src, run `./release.sh 0.16.0-incubating 0.16.0-incubating`, replacing `0.16.0-incubating` where the first argument is the release version and 2nd argument is commit-ish. This script will:
* checkout the tag of the Druid release version * checkout the tag of the Druid release version
* build the docs for that version into incubator-druid-website-src * build the docs for that version into incubator-druid-website-src
@ -600,32 +695,56 @@ Additionally, announce it to the Druid official ASF Slack channel, https://druid
##### subject ##### subject
``` ```plaintext
[ANNOUNCE] Apache Druid (incubating) 0.15.1 release [ANNOUNCE] Apache Druid (incubating) 0.16.0 release
``` ```
##### body ##### body
``` ```plaintext
Announcing Apache Druid 0.15.1-incubating, a small but important release that includes a collection of bug and documentation fixes. The Apache Druid team is proud to announce the release of Apache Druid
(incubating) 0.16.0. Druid is a high performance analytics data store for
event-driven data.
Apache Druid (incubating) is a high performance analytics data store for event-driven data. Apache Druid 0.16.0-incubating contains over 350 new features, performance
enhancements, bug fixes, and major documentation improvements from 50
contributors. Major new features and improvements include:
- 'Vectorized' query processing
- 'Minor' compaction
- Native parallel indexing with shuffle
- New 'indexer' process
- Huge improvements to the web console
- New documentation website
- Official Docker image
Source and binary distributions can be downloaded from: Source and binary distributions can be downloaded from:
https://druid.apache.org/downloads.html https://druid.apache.org/downloads.html
See the release notes for additional details: Release notes are at:
https://github.com/apache/incubator-druid/releases/tag/druid-0.15.1-incubating https://github.com/apache/incubator-druid/releases/tag/druid-0.16.0-incubating
Thanks to everyone who contributed to this release! A big thank you to all the contributors in this milestone release!
---- ----
Disclaimer: Apache Druid is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. Disclaimer: Apache Druid is an effort undergoing incubation at The Apache
Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is
required of all newly accepted projects until a further review indicates
that the infrastructure, communications, and decision making process have
stabilized in a manner consistent with other successful ASF projects. While
incubation status is not necessarily a reflection of the completeness or
stability of the code, it does indicate that the project has yet to be
fully endorsed by the ASF.
``` ```
[Previous release announcements](https://lists.apache.org/list.html?general@incubator.apache.org:lte=1y:%22%5BANNOUNCE%5D%20Apache%20Druid%20(incubating%22)) [Previous release announcements](https://lists.apache.org/list.html?general@incubator.apache.org:lte=1y:%22%5BANNOUNCE%5D%20Apache%20Druid%20(incubating%22))
Sticky the announcement on the ['druid-user' group](https://groups.google.com/forum/?pli=1#!forum/druid-user).
### Update Wikipedia
Update the release version and date on the [Apache Druid Wikipedia article](https://en.wikipedia.org/w/index.php?title=Apache_Druid) (bots might also do this?).
### Remove old releases which are not 'active' ### Remove old releases which are not 'active'