Skip to content

Commit b07cd6d

Browse files
authored
Merge pull request #746 from cheftako/docs
Fix release instructions.
2 parents c703eb2 + 79ea18a commit b07cd6d

File tree

1 file changed

+20
-19
lines changed

1 file changed

+20
-19
lines changed

RELEASE.md

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,26 @@ Please note this guide is only intended for the admins of this repository, and r
44

55
Creating a new release of network proxy involves releasing a new version of the client library (konnectivity-client) and new images for the proxy agent and server. Generally we also want to upgrade kubernetes/kubernetes with the latest version of the images and library, but this is a GCE specific change.
66

7-
1. The first step involves creating a new git tag for the release, following semver for go libraries. A tag is required for both the repository and the konnectivity-client library. For example releasing the `0.99.0` version will have two tags `v0.99.0` and `konnectivity-client/v0.99.0` on the appropriate commit. The minor version number (the `y` in `x.y.z`) should match the minor version of the Kubernetes version that is utilized by the apiserver-network-proxy. The patch level version number (the `z` in `x.y.z`) should increase by one unless a new minor version is being created, in which case it should be `0`.
7+
1. If increasing the minor version (the `y` in `x.y.z`), a new release branch must be created. The name of this branch should be `release-x.y` where `x` and `y` correspond to the major and minor release numbers for apiserver-network-proxy. For example, if increasing the apiserver-network-proxy from verision `0.98.4` to `0.99.0` a new branch should be created named `release-0.99`.
8+
9+
After making the new tag for the release version, use the following command to create the new branch:
10+
11+
```
12+
# assuming a release version of 0.99.0
13+
export RELEASE=release-0.99
14+
git checkout -b "${RELEASE}"
15+
git push upstream "${RELEASE}"
16+
```
17+
18+
2. The first step involves creating a new git tag for the release, following semver for go libraries. A tag is required for both the repository and the konnectivity-client library. For example releasing the `0.99.0` version will have two tags `v0.99.0` and `konnectivity-client/v0.99.0` on the appropriate commit. The minor version number (the `y` in `x.y.z`) should match the minor version of the Kubernetes version that is utilized by the apiserver-network-proxy. The patch level version number (the `z` in `x.y.z`) should increase by one unless a new minor version is being created, in which case it should be `0`.
819
920
In the master branch, choose the appropriate commit, and determine a patch version based on the required Kubernetes version and the current patch level.
1021
1122
Example commands for `HEAD` of `master` branch. (Assumes you have `git remote add upstream [email protected]:kubernetes-sigs/apiserver-network-proxy.git`.)
1223
1324
```
14-
# Assuming v0.1.1 exists
15-
export TAG=v0.1.2
25+
# Assuming v0.2.1 exists
26+
export TAG=v0.2.2
1627
export MESSAGE="Meaningful description of change."
1728
1829
git fetch upstream
@@ -27,35 +38,25 @@ Creating a new release of network proxy involves releasing a new version of the
2738
Example commands for `HEAD` of `release-0.0` branch:
2839
2940
```
30-
# Assuming v0.0.35 exists
31-
export TAG=v0.0.36
41+
# Assuming v0.1.35 exists, then it is on the release-0.1 branch
42+
export RELEASE=release-0.1
43+
export TAG=v0.1.36
3244
export MESSAGE="Meaningful description of change."
3345
3446
git fetch upstream
35-
git tag -a "${TAG}" -m "${MESSAGE}" upstream/release-0.0
36-
git tag -a "konnectivity-client/${TAG}" -m "${MESSAGE}" upstream/release-0.0
47+
git tag -a "${TAG}" -m "${MESSAGE}" upstream/${RELEASE}
48+
git tag -a "konnectivity-client/${TAG}" -m "${MESSAGE}" upstream/${RELEASE}
3749
git push upstream "${TAG}"
3850
git push upstream "konnectivity-client/${TAG}"
3951
```
4052
4153
Once the two tags are created, the konnectivity-client can be imported as a library in kubernetes/kubernetes and other go programs.
4254
43-
2. If increasing the minor version (the `y` in `x.y.z`), a new release branch must be created. The name of this branch should be `release-x.y` where `x` and `y` correspond to the major and minor release numbers for apiserver-network-proxy. For example, if increasing the apiserver-network-proxy from verision `0.98.4` to `0.99.0` a new branch should be created named `release-0.99`.
44-
45-
After making the new tag for the release version, use the following command to create the new branch:
46-
47-
```
48-
# assuming a release version of 0.99.0
49-
export RELEASE=release-0.99
50-
git checkout -b "${RELEASE}"
51-
git push upstream "${RELEASE}"
52-
```
53-
5455
3. To publish the proxy server and proxy agent images, they must be promoted from the k8s staging repo. An example PR can be seen here: [https://github.com/kubernetes/k8s.io/pull/5686](https://github.com/kubernetes/k8s.io/pull/5686)
5556
5657
The SHA in the PR corresponds to the SHA of the image within the k8s staging repo. (This is under the **Name** column)
5758
58-
The images can be found here for the [proxy server](http://console.cloud.google.com/gcr/images/k8s-staging-kas-network-proxy/GLOBAL/proxy-server?gcrImageListsize=30) and [proxy agent](http://console.cloud.google.com/gcr/images/k8s-staging-kas-network-proxy/GLOBAL/proxy-agent?gcrImageListsize=30).
59+
The images can be found here for the [proxy server](https://console.cloud.google.com/artifacts/docker/k8s-staging-kas-network-proxy/us/gcr.io/proxy-server?gcrImageListsize=30) and [proxy agent](https://console.cloud.google.com/artifacts/docker/k8s-staging-kas-network-proxy/us/gcr.io/proxy-agent?gcrImageListsize=30).
5960
6061
Please ensure that the commit shown on the tag of the image matches the one shown in the tags page in the network proxy repo.
6162

0 commit comments

Comments
 (0)