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.
- Review release notes in JIRA
- 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
- Create a tag by
git tag RELEASE_VERSION
git remote add upstream https://github.com/apache/incubator-gearpump
git push upstream RELEASE_VERSION
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