When you want to create a release tag, here is the process:
I use RELEASE_VERSION to represent the version to be released. The version must follow a format. For example, 0.2.3 is a valid release version, 0.2.3-SNAPSHOT is not a valid release version.
Step0: Function verification Checklist
- metrics Ui is updated correctly.
- submit a jar by UI can work correctly, custom config is effective, clock is advancing.
- Dynamic DAG functions normally.
Step1: Pre-release
- Modify CHANGELOG.md to add JIRA's for the release
- Update version in docs/version.yml
- Bump the gearpump version in version.sbt
version in ThisBuild := "RELEASE_VERSION"
- Run dev-tools/dependencies.sh This will generate a LICENSE.dependencies file that lists all dependencies including Apache. Make sure this agrees with the LICENSE and license/* files. Eventually we‘ll have something like a verify option so the inspection isn’t manual.
- Run dev-tools/create_apache_source_release.sh $GPG_KEY $GPG_PASSPHRASE This will provide the source artifacts that need to be uploaded in step 6. below
- Upload to svn Run ‘svn checkout https://dist.apache.org/repos/dist/dev/incubator/gearpump’ Run ‘svn mkdir RELEASE_VERSION-incubating’ Run ‘svn mkdir RELEASE_VERSION-incubating/RC[0-9]’ cp the gearpump* files generated from 5. to RELEASE_VERSION-incubating/RC[0-9] Run ‘svn add RELEASE_VERSION-incubating/RC[0-9]/gearpump*’ Run ‘svn commit’
- Run dev-tools/create_apache_bin_release.sh $GPG_KEY $GPG_PASSPHRASE This will provide the binary artifacts that need to be uploaded in step 8. below
- svn add gearpump-* to https://dist.apache.org/repos/dist/dev/incubator/gearpump/RELEASE_VERSION-incubating/RC[0-9]
- svn add KEYS to https://dist.apache.org/repos/dist/dev/incubator/gearpump/ This only needs to be done if we are adding new committers for this release 10.Create a tag for the RC release by
git tag RELEASE_VERION-RC[0-9]
11.Push this tag upstream and merge
Step2: Release
- Create a tag by
git tag RELEASE_VERSION
git remote add upstream https://github.com/apache/incubator-gearpump
git push upstream RELEASE_VERSION
Step3: Post-Release
Bump the gearpump version in version.sbt
version in ThisBuild := "NEXT_SNAPSHOT_VERSION"
where NEXT_SNAPSHOT_VERSION must end with “-SNAPSHOT”. For example, 0.2.3-SNAPSHOT is a good snapshot version, 0.2.3 is NOT
Create JIRA for new release
Make PR with new release