Table of Contents |
---|
Create release branch
From 0.6.0 release
...
- Maven build: every pom.xml
- Docs: in docs/_config.yml update ZEPPELIN_VERSION, BASE_PATH, interpreter installation doc
- Configuration file: conf/interpreter-list
- Helium packages: zeppelin-examples/zeppelin-example-clock/zeppelin-example-clock.json, zeppelin-web/src/app/tabledata/package.json, zeppelin-web/src/app/visualization/package.json
- versions in all the Dockerfile
You can bump up the version and create tag from release branch by running `tag_release.sh` script as below:
...
https://dist.apache.org/repos/dist/dev/zeppelin/zeppelin-0.6.0-rc1
Refer the link here. https://stackoverflow.com/questions/15510119/how-to-add-an-existing-folder-with-files-to-svn/15511432
Deploy maven artifact to staging repository
...
Code Block | ||
---|---|---|
| ||
$ GPG_PASSPHRASE=[your gpg passphrase] ASF_USERID=[your asf user id] ASF_PASSWORD=[your asf password] dev/publish_release.sh 0.6.0 v0.6.0-rc1 |
Start a vote in dev@list
Once release candidate is ready, start a vote thread in dev@ list. For example
No Format |
---|
[VOTE] Release Apache Zeppelin 0.6.0 (RC1) Hi folks, I propose the following RC to be released for the Apache Zeppelin 0.6.0 release. The commit id is 72e38d0b3c3ba8b08ba1176c2eb2c38661a54d31 : https://git-wip-us.apache.org/repos/asf?p=zeppelin.git;a=commit;h=72e38d0b3c3ba8b08ba1176c2eb2c38661a54d31 This corresponds to the tag: v0.6.0-rc1 : https://git-wip-us.apache.org/repos/asf?p=zeppelin.git;a=tag;h=refs/tags/v0.6.0-rc1 The release archives (tgz), signature, and checksums are here https://dist.apache.org/repos/dist/dev/zeppelin/zeppelin-0.6.0-rc1/ The release candidate consists of the following source distribution archive zeppelin-0.6.0.tgz In addition, the following supplementary binary distributions are provided for user convenience at the same location zeppelin-0.6.0-bin-all.tgz The maven artifacts are here https://repository.apache.org/content/repositories/orgapachezeppelin-1001/org/apache/zeppelin/ You can find the KEYS file here: https://dist.apache.org/repos/dist/release/zeppelin/KEYS Release notes available at https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12316221&version=12333531 Vote will be open for next 72 hours (close at 7am 8/Nov PDT). [ ] +1 approve [ ] 0 no opinion [ ] -1 disapprove (and reason why) |
...
Once vote is passed, post result into the dev@list. For example
No Format |
---|
[RESULT] [VOTE] Release Apache Zeppelin 0.6.0 (RC1) The vote passes with 7 binding +1 votes, 9 non-binding +1 votes, and no +0 or -1 votes. Thanks for everyone who verified rc and voted. +1: DuyHai Doan Anthony Corbacho* Khalid Huseynov Jeff Steinmetz Victor Manuel Garcia Felix Cheung Jonathan Kelly Corneu Damien* Alexander Bezzubov* Madhuka Udantha Jian Zhong Guillaume Alleon Henry Saputra* Jongyoul Lee* Mina Lee* Moon soo Lee* +0: -1: *binding Vote thread: http://mail-archives.apache.org/mod_mbox/zeppelin-dev/201511.mbox/%3CCALf24sboheQdok1BRX1p5pT-mwY6waOfs490xiPAhT-QNCCAHg%40mail.gmail.com%3E |
...
Publish the release
Move release package from dev to release
...
Code Block | ||
---|---|---|
| ||
$ svn mv https://dist.apache.org/repos/dist/dev/zeppelin/zeppelin-0.6.0-rc1 https://dist.apache.org/repos/dist/release/zeppelin/zeppelin-0.6.0 -m 'Move 0.6.0 to release folder' |
Create tag for release and clean up tags for rc
Create tag without name 'rc' and remove all 'rc' tags. Make sure that release version archived under http://archive.apache.org/dist/zeppelin/ before creating tag so that docker build succeed without error.
Code Block | ||
---|---|---|
| ||
git tag v0.9.0-preview1 v0.9.0-preview1-rc1
git push apache v0.9.0-preview1
git push apache :v0.9.0-preview1-rc1 |
Remove old release
Old release should be removed from dist.apache.org. Old releases are automatically archived (See http://www.apache.org/dev/release.html#when-to-archive for more details.)
...
'Release' released version from JIRA
Update download page
Update download page in download.html and supported_interpreters.html with new releases information including release note.
Note that link to previous release should be updated while old releases will be moved from dist.apache.org -> archive.apache.orghttps://issues.apache.org/jira/projects/ZEPPELIN?selectedItem=com.atlassian.jira.jira-projects-plugin%3Arelease-page&status=unreleased
Publish documents
- Create and publish document for released version.
- Create and publish document for next development version.
- Update latest version redirect rule: Update latest doc page to point new release version in .htacess .
- DOAP file: Add new entry of the release in doap.rdf.
Here is example to publish documents to svn repo
Code Block | ||
---|---|---|
| ||
# Make sure you are using python 2.7 # Build release version document $ git clone https://github.com/apache/zeppelin.git $ cd zeppelin $ git checkout v0.6.0 $ cd docs # Update file _config.yml (ASSET_PATH & ZEPPELIN_VERSION & BASE_PATH) $ bundle exec jekyll build --safe # checkout ASF repo and copy release document to it $ svn co https://svn.apache.org/repos/asf/zeppelin asf-zeppelin $ cp -R _site asf-zeppelin/site/docs/0.6.0 # Do the same for snapshot version if you are releasing a new major version, e.g. 0.9.0 # Build develop version document $ git checkout master $ bundle exec jekyll build --safe # copy develop version document to ASF repo $ cp -R _site asf-zeppelin/site/docs/0.7.0-SNAPSHOT # go to Zeppelin directory and clone gh-pages $ cd .. $ git clone -b gh-pages https://github.com/apache/zeppelin.git gh-pages $ cd gh-pages # Update file download.md, doap.rdf, documentation.md, supported_interpreters.md, _navigation.html $ JEKYLL_ENV=production bundle exec jekyll build # copy main page to ASF repo $ cp -R _site/* ../docs/asf-zeppelin/site # add and delete directories to svn repo $ cd ../docs/asf-zeppelin/site/docs $ svn delete 0.6.0-SNAPSHOT $ svn add 0.6.0 $ svn add 0.7.0-SNAPSHOT $ svn commit -m "Publish document 0.6.0 and 0.7.0-SNAPSHOT" |
Check release status
Before announcing the release, you need to check the apache release status page to confirm there's no problem in the release process. https://checker.apache.org/projs/zeppelin.html
...
Here's an example of an announce.
Please also include a short description of what Apache Zeppelin is or does as the first paragraph i.e
Zeppelin is a collaborative data analytics and visualization tool for distributed, general-purpose data processing systems such as Apache Spark, Apache Flink, etc.
...