Skip to content

Commit

Permalink
docs(release): update RELEASE.md (#4832)
Browse files Browse the repository at this point in the history
* Update RELEASE.md

* Screenshot of commit status check for release

* Update RELEASE.md

* Update RELEASE.md

* Update RELEASE.md

Co-authored-by: Yuan (Bob) Gong <gongyuan94@gmail.com>
  • Loading branch information
hilcj and Bobgy committed Nov 30, 2020
1 parent 9a20fc5 commit ff47497
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 13 deletions.
37 changes: 24 additions & 13 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,13 +93,15 @@ if you only want to use or contribute to this repo.
* OS: Linux (MacOS not supported yet due to different behavior of sed)
* Permissions needed
* Can create a branch in github.com/kubeflow/pipelines.
* (Before [#4840](https://github.com/kubeflow/pipelines/issues/4840) is resolved) one would need the admin access to kubeflow/pipelines repo.
* Can trigger cloudbuild jobs in ml-pipeline-test GCP project.
* Tools that should be in your `$PATH`
* jq 1.6 https://stedolan.github.io/jq/download/
* yq https://github.com/mikefarah/yq/releases/tag/3.3.0
* jdk 8
* node 12
* bazel 0.24.0
* bazel 0.24.0 https://github.com/bazelbuild/bazel/releases/tag/0.24.0
* python 3 (on linux, one would need the `python` to be `python3` by default instead of `python2`)
* Preparations
1. Clone github.com/kubeflow/pipelines repo into `$KFP_REPO`.
2. `cd $KFP_REPO`
Expand Down Expand Up @@ -168,6 +170,10 @@ Do the following things before a release:
1. Verify cloudbuild and postsubmit tests are passing: visit https://github.com/kubeflow/pipelines/commits/master for master branch.
![How to very cloudbuild and postsubmit status](release-status-check.png)
If not, contact the KFP team to determine if the failure(s) would block the release.
### Releasing from release branch
Note, when releasing from master, all the below mentions of "release branch" means master branch.
Expand All @@ -181,6 +187,11 @@ Note, when releasing from master, all the below mentions of "release branch" mea
* ...
Contact @Bobgy if you are not sure what next version should be.
1. Verify all the required tools are installed properly:
```bash
./hack/check-release-needed-tools.sh
```
1. Update all version refs in release branch by
```bash
./hack/release.sh $VERSION $BRANCH
Expand All @@ -191,6 +202,7 @@ Note, when releasing from master, all the below mentions of "release branch" mea
1. View related cloudbuild jobs' statuses by clicking the latest commit's status icon
in the release branch. The page will look like https://github.com/kubeflow/pipelines/runs/775788343.
Refer to the above screenshot to find the page.
1. Wait and make sure the `build-each-commit` cloudbuild job that builds all images
in gcr.io/ml-pipeline-test succeeded. If it fails, please click "View more details
Expand All @@ -216,20 +228,20 @@ and then "Retry", because after waiting for previous step, artifacts are now rea
1. Release `kfp` python packages to PyPI.
```bash
pip3 install twine --user
gsutil cp gs://ml-pipeline/release/$TAG_NAME/kfp.tar.gz kfp-$TAG_NAME.tar.gz
python3 -m twine upload --username kubeflow-pipelines kfp-$TAG_NAME.tar.gz
gsutil cp gs://ml-pipeline/release/$VERSION/kfp.tar.gz kfp-$VERSION.tar.gz
python3 -m twine upload --username kubeflow-pipelines kfp-$VERSION.tar.gz
```
!!! The file name must contain the version. See https://github.com/kubeflow/pipelines/issues/1292
1. Create a GitHub release using `$TAG_NAME` git tag and title `Version $TAG_NAME`,
1. Create a GitHub release using `$VERSION` git tag and title `Version $VERSION`,
fill in the description. Detailed steps:
1. [Draft a new release](https://github.com/kubeflow/pipelines/releases/new).
1. Typing in version tag field to search and select the "$TAG_NAME" tag published in release instructions above.
1. Typing in version tag field to search and select the "$VERSION" tag published in release instructions above.
Its format is like `X.Y.Z` or `X.Y.Z-rc.N`.
1. Use this template for public releases and replace the `$TAG_NAME` with real values.
1. Use this template for public releases and replace the `$VERSION` with real values.
<pre>
To deploy Kubeflow Pipelines in an existing cluster, follow the instruction in [here](https://www.kubeflow.org/docs/pipelines/standalone-deployment-gcp/) or via UI [here](https://console.cloud.google.com/ai-platform/pipelines)
Expand All @@ -238,7 +250,7 @@ fill in the description. Detailed steps:
python3 -m pip install kfp kfp-server-api --upgrade
```
See the [Change Log](https://github.com/kubeflow/pipelines/blob/$TAG_NAME/CHANGELOG.md)
See the [Change Log](https://github.com/kubeflow/pipelines/blob/$VERSION/CHANGELOG.md)
</pre>
Use this template for prereleases (release candidates) and **PLEASE CHECK** the
Expand All @@ -251,22 +263,21 @@ fill in the description. Detailed steps:
python3 -m pip install kfp kfp-server-api --pre --upgrade
```
See the [Change Log](https://github.com/kubeflow/pipelines/blob/$TAG_NAME/CHANGELOG.md)
See the [Change Log](https://github.com/kubeflow/pipelines/blob/$VERSION/CHANGELOG.md)
</pre>
1. Update master branch to the same version.
1. Update master branch to the same version and include latest changelog:
```bash
export TAG_NAME=<TAG_NAME>
git checkout master
git pull
git checkout -b <your-branch-name>
# This avoids line break at end of line.
echo -n $TAG_NAME > VERSION
echo -n $VERSION > VERSION
# This takes a while.
./hack/release-imp.sh
git checkout $TAG_NAME -- CHANGELOG.md
git checkout $VERSION -- CHANGELOG.md
git add -A
git commit -m "chore(release): bump version to $TAG_NAME on master branch"
git commit -m "chore(release): bump version to $VERSION on master branch"
```
1. If current release is not a prerelease, create a PR to update version in kubeflow documentation website:
Expand Down
Binary file added release-status-check.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit ff47497

Please sign in to comment.