Skip to content

Commit

Permalink
Add instructions to handle failed releases. (istio#870)
Browse files Browse the repository at this point in the history
* polish

* add word

* polish

* polish


Former-commit-id: 78b66f5
  • Loading branch information
xiaolanz authored and sebastienvas committed Sep 20, 2017
1 parent 65b8322 commit 359bf85
Showing 1 changed file with 26 additions and 7 deletions.
33 changes: 26 additions & 7 deletions release/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,25 +65,44 @@ $ alias githubctl="${PWD}/bazel-bin/toolbox/githubctl/githubctl"

The release process goes like the following:

Step 1: Tag the release.
```
# Tag the release
$ githubctl --token_file=<github token file> \
--op=tagIstioDepsForRelease \
--base_branch=<release branch or master>
```

Step 2: The previous command triggers rebuild and retagging on pilot, proxy, mixer and auth.
Wait for them to finish. Check build job status [here](https://console.cloud.google.com/gcr/builds?project=istio-io&organizationId=433637338589)

# The previous command triggers rebuild and retagging on pilot, mixer and auth.
# Wait for them to finish, then create an update PR in istio/istio
Step 3: Create an update PR in istio/istio.
```
$ githubctl --token_file=<github token file> \
--op=updateIstioVersion --base_branch=<release branch or master>
--op=updateIstioVersion --base_branch=<release branch or master>
```

Step 4: Request PR approval and wait for the PR to be merged.

# Wait for the PR to be merged.
# Then create the release in GitHub, upload the artifacts,
# advance next release tag, update download script with latest release:
Step 5: Finalize the release. This creates the release in GitHub, uploads the artifacts,
advances next release tag, and updates download script with latest release:
```
$ githubctl --token_file=<github token file> \
--op=uploadArtifacts --base_branch=<release branch or master> \
--next_release=0.2.2
```

```<github token file>``` is a text file containing the github peronal access token setup following the [instruction](https://github.com/istio/istio/blob/master/devel/README.md#setting-up-a-personal-access-token)

### Revert a failed release

When a release failed, we need to clean up partial state before retry. A common case is that a build failed when doing Step 2 from the above. We need to rollback the Step 1 by doing the following:

1. Remove new tags on the repos by finding the release and click "delete tag".
* https://github.com/istio/auth/releases
* https://github.com/istio/mixer/releases
* https://github.com/istio/pilot/releases
1. Proceed with the above release process step [1-5].

## Manual release process (DEPRECATED)

### Creating tags
Expand Down

0 comments on commit 359bf85

Please sign in to comment.