Skip to content

Latest commit

 

History

History
 
 

release

KFP Release tools

For full release documentation, please read RELEASE.md.

To do a release:

TAG=<TAG> BRANCH=<BRANCH> make release

Example, release in release branch:

    TAG=1.4.0 BRANCH=release-1.4 make release

Example, release an RC (release candidate) in master branch:

    TAG=2.0.0-rc.1 BRANCH=master make release

Dev guide

Take a look at the ./Makefile, all the rules there are entrypoints for dev activities.

Implementation Details

The script ./release.sh is a wrapper

  1. Clones github.com/kubeflow/pipelines repo to a temporary path.
  2. Updates ../../VERSION to TAG.
  3. Checkout the release branch.
  4. Runs ./bump-version-docker.sh.
  5. Runs git commit and tag.
  6. After confirming with user input, pushes to upstream branch.

The script ./bump-version-docker.sh

  1. Runs ./bump-version-in-place.sh in gcr.io/ml-pipeline-test/release:latest image.

The script ./bump-version-in-place.sh does the following:

  1. Generate ./CHANGELOG.md using commit history.
  2. Regenerate open api specs based on proto files.
  3. Regenerate kfp-server-api python package.
  4. Update all version refs in this repo to ./VERSION by calling each of the ./**/hack/release.sh scripts. The individual scripts are responsible for updating version refs to their own folder.