Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Now, add your Apache GPG key to the Flink’s KEYS file in the release repository at dist.apache.org. Follow the instructions listed at the top of these files. (Note: Only PMC members have write access to the release repository. If you end up getting 403 errors ask on the mailing list for assistance.) PMC member can refer following scripts to add your Apache GPG key to the KEYS in the release repository.

Code Block
languagebash
svn co https://dist.apache.org/repos/dist/release/flink flink-dist-release-repo
cd flink-dist-release-repo
(gpg --list-sigs <YOUR_KEY_ID> && gpg --armor --export <YOUR_KEY_ID>) >> KEYS
svn ci -m "[flink] Add <YOUR_NAME>'s public key"

Configure git to use this key when signing code by giving it your key ID, as follows:

...

Code Block
languagebash
RELEASE_VERSION="2.0.0"
SHORT_RELEASE_VERSION="2.0"
CURRENT_SNAPSHOT_VERSION="$SHORT_RELEASE_VERSION-SNAPSHOT"
NEXT_SNAPSHOT_VERSION="2.1-SNAPSHOT"
SHORT_NEXT_SNAPSHOT_VERSION="2.1"
SUPPORTED_FLINK_VERSIONS="1.15,1.16,1.17"

If you are doing a new major/minor release (e.g. 2.0.0, 2.1.0), check out the version of the codebase from which you start the release. This may be HEAD of the master branch. Create a branch for the new version that we want to release before updating the master branch to the next development version:

...

Code Block
languagebash
$ OLD_VERSION=$CURRENT_SNAPSHOT_VERSION NEW_VERSION=$RELEASE_VERSION tools/releasing/update_branch_version.sh
$ RELEASE_VERSION=$RELEASE_VERSION tools/releasing/create_source_release.sh

Note: Please manually update the Flink version used in archetypeVersion in build-your-own-project.md and quick-start.md as appropriate.


Next, we build the Python artifacts:

...

Finally, we stage the maven artifacts:

Code Block
languagebash
$ SUPPORTED_FLINK_VERSIONS=$SUPPORTED_FLINK_VERSIONS$ tools/releasing/deploy_staging_jars.sh

...

  1. If you have not already, check out the Flink section of the dev repository on dist.apache.org via Subversion. In a fresh directory:

    Code Block
    languagebash
    svn checkout https://dist.apache.org/repos/dist/dev/flink --depth=immediates


  2. Make a directory for the new release:

    Code Block
    languagebash
    mkdir flink/flink-ml-${RELEASE_VERSION}-rc${RC_NUM}
    Copy all release distributions, hashes, and GPG signature:
    Code Block
    mv <flink-ml-dir>/release/* flink/flink-ml-${RELEASE_VERSION}-rc${RC_NUM}


  3. Add and commit all the files.

    Code Block
    languagebash
    cd flink 
    svn add flink-ml-${RELEASE_VERSION}-rc${RC_NUM}
    svn commit -m "Apache Flink ML, version ${RELEASE_VERSION}, release candidate ${RC_NUM}"
    Verify that files are present
    }, release candidate ${RC_NUM}"


  4. Verify that files are present

Update apache/infrastructure-bb2

https://github.com/apache/infrastructure-bb2 is visible only to committers.

See previous changes of flink-ml.py to understand the changes needed to create website buildbot for the new Flink ML release branch. Please remove the last minor release branch after adding a new release branch.

After the change takes effect within one day, you should be able to find the corresponding buildbot at https://ci2.apache.org/#/builders.

...

The final step of building the candidate is to propose a website pull request.

Start by updating the variables for the latest released version in the top-level config.toml, and update updating the version/date in release_archive.yml, linking to the source code download and the Release Notes in JIRA. Also and adding urls in flink_ml.yml. Also, add a new blog entry announcing the release in docs/content/posts.

...

Code Block
$ svn move -m "Release Flink ML ${RELEASE_VERSION}" \
    https://dist.apache.org/repos/dist/dev/flink/flink-ml-${RELEASE_VERSION}-rc${RC_NUM} \
    https://dist.apache.org/repos/dist/release/flink/flink-ml-${RELEASE_VERSION}

Remove old release candidates from dist.apache.org

...