Skip to content

Commit

Permalink
Update release process
Browse files Browse the repository at this point in the history
  • Loading branch information
hakman committed Nov 26, 2022
1 parent 08661b2 commit e805655
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 49 deletions.
44 changes: 4 additions & 40 deletions docs/contributing/release-process.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,10 @@ git add . && git commit -m "Release ${VERSION}"
```

This is the "release commit". Push and create a PR.
For alpha and ".0-beta.1" releases, the base branch flag (`-B`) should be omitted.

```
gh pr create -f -l tide/merge-method-squash
gh pr create -f -l tide/merge-method-squash -B release-1.22
```

Wait for the PR to merge.
Expand All @@ -95,37 +96,6 @@ The [staging CI job](https://testgrid.k8s.io/sig-cluster-lifecycle-kops#kops-pos

It (currently) takes about 30 minutes to run.

In the meantime, you can compile the release notes...

### Compile release notes

This step is not necessary for an ".0-alpha.1" release as these are made off
of the branch point for the previous minor release.

The `relnotes` tool is from [kopeio/shipbot](https://github.com/kopeio/shipbot).

For example:

```
git checkout master
git pull upstream master
git checkout -b relnotes_${VERSION}
FROM=1.21.0-alpha.2 # Replace "1.21.0-alpha.2" with the previous version
DOC=$(expr ${VERSION} : '\([^.]*.[^.]*\)')
git log v${FROM}..v${VERSION} --oneline | grep Merge.pull | grep -v Revert..Merge.pull | cut -f 5 -d ' ' | tac > /tmp/prs
echo -e "\n## ${FROM} to ${VERSION}\n" >> docs/releases/${DOC}-NOTES.md
relnotes -config .shipbot.yaml < /tmp/prs >> docs/releases/${DOC}-NOTES.md
```

Review then send a PR with the release notes:

```
git add -p docs/releases/${DOC}-NOTES.md
git commit -m "Release notes for ${VERSION}"
gh pr create -f
```

### Propose promotion of artifacts

The following tools are prerequisites:
Expand All @@ -148,7 +118,7 @@ echo "# ${VERSION}" >> images.yaml
kpromo cip run --snapshot gcr.io/k8s-staging-kops --snapshot-tag ${VERSION} >> images.yaml
```

Currently we send the image and non-image artifact promotion PRs separately.
Currently, we send the image and non-image artifact promotion PRs separately.

```
cd ${GOPATH}/src/k8s.io/k8s.io
Expand Down Expand Up @@ -197,12 +167,6 @@ git checkout v$VERSION
shipbot -tag v${VERSION} -config .shipbot.yaml -src ${GOPATH}/src/k8s.io/k8s.io/k8s-staging-kops/kops/releases/${VERSION}/
```

### Promote to S3 (stable releases < 1.22)

```
aws s3 sync --acl public-read ${GOPATH}/src/k8s.io/k8s.io/k8s-staging-kops/kops/releases/${VERSION}/ s3://kubeupv2/kops/${VERSION}/
```

### Smoke test the release

This step is only necessary for stable releases (as binary artifacts are not otherwise promoted to artifacts.k8s.io).
Expand All @@ -223,7 +187,7 @@ everything is pulling from the new locations.

* Download release
* Validate it
* Add notes
* Add notes by pressing the "Generate release notes" button
* Publish it

### Release to Homebrew
Expand Down
30 changes: 30 additions & 0 deletions docs/releases/1.24-NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -668,3 +668,33 @@ In particular, if you are using the snapshot-controller addon, upgrade your clus
* Fix openstack tag limitation [@akkina2107](https://github.com/akkina2107) [#13853](https://github.com/kubernetes/kops/pull/13853)
* Warm pool-enabled ASGs scaled to zero will no longer panic [@olemarkus](https://github.com/olemarkus) [#14251](https://github.com/kubernetes/kops/pull/14251)
* Bump AWS CNI to 1.11.3 [@MoShitrit](https://github.com/MoShitrit) [#14107](https://github.com/kubernetes/kops/pull/14107)

## 1.24.3 to 1.24.4

* Avoid spurious changes with NLB due to access log config [@hakman](https://github.com/hakman) [#14319](https://github.com/kubernetes/kops/pull/14319)
* Add --network-id alias for --vpc flag [@hakman](https://github.com/hakman) [#14326](https://github.com/kubernetes/kops/pull/14326)
* Avoid spurious changes with bastion hosts due to user data [@hakman](https://github.com/hakman) [#14318](https://github.com/kubernetes/kops/pull/14318)
* cluster-autoscaler : Add iam permission autoscaling:DescribeScalingActivities needed since 1.24 version [@noony](https://github.com/noony) [#14317](https://github.com/kubernetes/kops/pull/14317)
* Disable rp_filter on cilium hosts [@olemarkus](https://github.com/olemarkus) [#14369](https://github.com/kubernetes/kops/pull/14369)
* gce: memberlist needs TCP also [@justinsb](https://github.com/justinsb) [#14364](https://github.com/kubernetes/kops/pull/14364)
* update node-problem-detector to version 0.8.12 [@jjinno](https://github.com/jjinno) [#14382](https://github.com/kubernetes/kops/pull/14382)
* update k8s cloudprovider openstack images [@zetaab](https://github.com/zetaab) [#14401](https://github.com/kubernetes/kops/pull/14401)
* Fix default launch spec detection for spotinst [@2solt](https://github.com/2solt) [#14389](https://github.com/kubernetes/kops/pull/14389)

## 1.24.4 to 1.24.5

* Update containerd to v1.6.9 [@hakman](https://github.com/hakman) [#14458](https://github.com/kubernetes/kops/pull/14458)
* Update Calico and Canal to v3.24.3 [@hakman](https://github.com/hakman) [#14466](https://github.com/kubernetes/kops/pull/14466)
* Set customizable affinity and tolerations for coredns-autoscaler to match main coredns deployment [@MoShitrit](https://github.com/MoShitrit) [#14503](https://github.com/kubernetes/kops/pull/14503)
* AWS CNI template updates [@MoShitrit](https://github.com/MoShitrit) [#14513](https://github.com/kubernetes/kops/pull/14513)
* Update Go to v1.18.8 [@hakman](https://github.com/hakman) [#14555](https://github.com/kubernetes/kops/pull/14555)
* Update Calico and Canal to latest versions [@hakman](https://github.com/hakman) [#14558](https://github.com/kubernetes/kops/pull/14558)
* Update containerd to v1.6.10 [@hakman](https://github.com/hakman) [#14550](https://github.com/kubernetes/kops/pull/14550)
* use sprig join for template functions [@heybronson](https://github.com/heybronson) [#14564](https://github.com/kubernetes/kops/pull/14564)
* aws: Fix SIGSEGV when using instance selector [@hakman](https://github.com/hakman) [#14576](https://github.com/kubernetes/kops/pull/14576)
* Add generics alternatives for fi.Bool/Float*/Int*/String*() [@hakman](https://github.com/hakman) [#14595](https://github.com/kubernetes/kops/pull/14595)
* Remove CloudFormation tests [@johngmyers](https://github.com/johngmyers) [#14602](https://github.com/kubernetes/kops/pull/14602)
* Fix pdb for identity webhook [@olemarkus](https://github.com/olemarkus) [#14442](https://github.com/kubernetes/kops/pull/14442)
* aws: Add `ec2:DescribeAvailabilityZones` to the AWS CCM permissions list [@lobziik](https://github.com/lobziik) [#14650](https://github.com/kubernetes/kops/pull/14650)
* aws: Limit the number of target groups updated per operation [@hakman](https://github.com/hakman) [#14648](https://github.com/kubernetes/kops/pull/14648)
* gce: Allow Cilium to connect to its etcd cluster [@hakman](https://github.com/hakman) [#14655](https://github.com/kubernetes/kops/pull/14655)
7 changes: 0 additions & 7 deletions docs/releases/1.25-NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,3 @@ The CSI Cinder plugin for OpenStack will now only use the CSI snapshotter when t
* All legacy addons are deprecated in favor of managed addons, including the [metrics server addon](https://github.com/kubernetes/kops/tree/master/addons/metrics-server) and the [autoscaler addon](https://github.com/kubernetes/kops/tree/master/addons/cluster-autoscaler).

* Due to lack of maintainers, the CloudFormation support has been deprecated. The current implementation will be left as-is until the implementation needs updates or otherwise becomes incompatible. At that point, it will be removed. We very much welcome anyone willing to contribute to this target.

# Full change list since 1.24.0 release

* [v1.25.0-alpha.1](https://github.com/kubernetes/kops/releases/tag/v1.25.0-alpha.1)
* [v1.25.0-alpha.2](https://github.com/kubernetes/kops/releases/tag/v1.25.0-alpha.2)
* [v1.25.0-beta.1](https://github.com/kubernetes/kops/releases/tag/v1.25.0-beta.1)
* [v1.25.0](https://github.com/kubernetes/kops/releases/tag/v1.25.0)
2 changes: 0 additions & 2 deletions docs/releases/1.26-NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,5 +51,3 @@ CNIs, use the "cni" networking option instead.
* Support for AWS Classic Load Balancer for API is deprecated and should not be used for newly created clusters.

* All legacy addons are deprecated in favor of managed addons, including the [metrics server addon](https://github.com/kubernetes/kops/tree/master/addons/metrics-server) and the [autoscaler addon](https://github.com/kubernetes/kops/tree/master/addons/cluster-autoscaler).

# Full change list since 1.25.0 release

0 comments on commit e805655

Please sign in to comment.