Skip to content

Commit d05a6de

Browse files
Merge pull request #225 from RadekManak/rebase
OCPCLOUD-2742: Merge https://github.com/kubernetes-sigs/cluster-api:v1.8.4 into master
2 parents c364116 + 7460c59 commit d05a6de

File tree

5,407 files changed

+493729
-227150
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

5,407 files changed

+493729
-227150
lines changed

.github/ISSUE_TEMPLATE/kubernetes_bump.md

Lines changed: 36 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -11,30 +11,20 @@ This issue is tracking the tasks that should be implemented **after** the Kubern
1111

1212
## Tasks
1313

14-
Prerequisites:
15-
* [ ] Decide which Cluster API release series will support the new Kubernetes version
16-
* If feasible we usually cherry-pick the changes back to the latest release series.
14+
**Note:** If feasible we usually cherry-pick the changes back to the latest release series.
1715

1816
### Supporting managing and running on the new Kubernetes version
1917

2018
This section contains tasks to update our book, e2e testing and CI to use and test the new Kubernetes version
2119
as well as changes to Cluster API that we might have to make to support the new Kubernetes version. All of these
2220
changes should be cherry-picked to all release series that will support the new Kubernetes version.
2321

24-
* [ ] Modify quickstart and CAPD to use the new Kubernetes release:
25-
* Bump the Kubernetes version in:
26-
* `test/*`: search for occurrences of the previous Kubernetes version
27-
* `Tiltfile`
28-
* Ensure the latest available kind version is used (including the latest images for this kind release)
29-
* Add new images in the [kind mapper.go](https://github.com/kubernetes-sigs/cluster-api/blob/0f47a19e038ee6b0d3b1e7675a62cdaf84face8c/test/infrastructure/kind/mapper.go#L79).
30-
* See the [kind releases page](https://github.com/kubernetes-sigs/kind/releases) for the list of released images.
31-
* Set new default image for the [test framework](https://github.com/kubernetes-sigs/cluster-api/blob/0f47a19e038ee6b0d3b1e7675a62cdaf84face8c/test/framework/bootstrap/kind_provider.go#L40)
32-
* If code changes are required for CAPD to incorporate the new Kind version, update [kind latestMode](https://github.com/kubernetes-sigs/cluster-api/blob/0f47a19e038ee6b0d3b1e7675a62cdaf84face8c/test/infrastructure/kind/mapper.go#L66)
33-
* Prior art: #10094
34-
* Verify the quickstart manually
35-
* Bump `InitWithKubernetesVersion` and `WorkloadKubernetesVersion` in `clusterctl_upgrade_test.go`
36-
* Note: Only bump for Cluster API versions that will support the new Kubernetes release.
37-
* Prior art: #9160
22+
* [ ] Continuously modify CAPD to use early versions of the upcoming Kubernetes release (betas and rcs):
23+
* Bump the Kubernetes version in `test/*` except for `test/infrastructure/kind/*`.
24+
* Prior art: #10384
25+
* [ ] Modify CAPD to use the new Kubernetes release after it is GA:
26+
* Bump the Kubernetes version in `test/*` except for `test/infrastructure/kind/*`.
27+
* Prior art: #10454
3828
* [ ] Ensure the jobs are adjusted to provide test coverage according to our [support policy](https://cluster-api.sigs.k8s.io/reference/versions.html#supported-kubernetes-versions):
3929

4030
* At the `.versions` section in the `cluster-api-prowjob-gen.yaml` file in [test-infra](https://github.com/kubernetes/test-infra/blob/master/config/jobs/kubernetes-sigs/cluster-api/):
@@ -55,13 +45,36 @@ changes should be cherry-picked to all release series that will support the new
5545
TEST_INFRA_DIR=../../k8s.io/test-infra make generate-test-infra-prowjobs
5646
```
5747

48+
* Prior art: #32456
49+
5850
* [ ] Update book:
5951
* Update supported versions in `versions.md`
60-
* Prior art: #9161
52+
* Prior art: #10454
53+
6154
* [ ] Issues specific to the Kubernetes minor release:
6255
* Sometimes there are adjustments that we have to make in Cluster API to be able to support
6356
a new Kubernetes minor version. Please add these issues here when they are identified.
6457

58+
### Bump quickstart and kind image references in CAPD
59+
60+
Prerequisites:
61+
62+
* The target Kubernetes version is GA
63+
* There is a new [kind version with/or a new set of kind images](https://github.com/kubernetes-sigs/kind/releases) for the target Kubernetes version
64+
65+
* [ ] Bump quickstart and kind image references in CAPD:
66+
* Bump the Kubernetes version in:
67+
* `docs/*`
68+
* `Tiltfile`
69+
* Bump kind image references in CAPD (and also kind if necessary, including the latest images for this kind release)
70+
* Add new images in the [kind mapper.go](https://github.com/kubernetes-sigs/cluster-api/blob/0f47a19e038ee6b0d3b1e7675a62cdaf84face8c/test/infrastructure/kind/mapper.go#L79).
71+
* See the [kind releases page](https://github.com/kubernetes-sigs/kind/releases) for the list of released images.
72+
* Set new default image for the [test framework](https://github.com/kubernetes-sigs/cluster-api/blob/0f47a19e038ee6b0d3b1e7675a62cdaf84face8c/test/framework/bootstrap/kind_provider.go#L40)
73+
* If code changes are required for CAPD to incorporate the new Kind version, update [kind latestMode](https://github.com/kubernetes-sigs/cluster-api/blob/0f47a19e038ee6b0d3b1e7675a62cdaf84face8c/test/infrastructure/kind/mapper.go#L66)
74+
* Verify the quickstart manually
75+
* Prior art: #10610
76+
* [ ] Cherry-pick above PR to the latest release branch.
77+
6578
### Using new Kubernetes dependencies
6679

6780
This section contains tasks to update Cluster API to use the latest Kubernetes Go dependencies and related topics
@@ -72,17 +85,19 @@ run the Cluster API controllers on the new Kubernetes version.
7285
* [ ] Ensure there is a new controller-runtime minor release which uses the new Kubernetes Go dependencies.
7386
* [ ] Update our Prow jobs for the `main` branch to use the correct `kubekins-e2e` image via the configuration file and by running `make generate-test-infra-prowjobs`.
7487
* It is recommended to have one PR for presubmit and one for periodic jobs to reduce the risk of breaking the periodic jobs.
75-
* Prior art: presubmit jobs: https://github.com/kubernetes/test-infra/pull/27311
76-
* Prior art: periodic jobs: https://github.com/kubernetes/test-infra/pull/27326
88+
* Prior art: https://github.com/kubernetes/test-infra/pull/32380
7789
* [ ] Bump the Go version in Cluster API: (if Kubernetes is using a new Go minor version)
7890
* Search for the currently used Go version across the repository and update it
7991
* We have to at least modify it in: `hack/ensure-go.sh`, `.golangci.yml`, `cloudbuild*.yaml`, `go.mod`, `Makefile`, `netlify.toml`, `Tiltfile`
80-
* Prior art: #7135
92+
* Prior art: #10452
8193
* [ ] Bump controller-runtime
8294
* [ ] Bump controller-tools
8395
* [ ] Bump the Kubernetes version used in integration tests via `KUBEBUILDER_ENVTEST_KUBERNETES_VERSION` in `Makefile`
8496
* **Note**: This PR should be cherry-picked as well. It is part of this section as it depends on kubebuilder/controller-runtime
8597
releases and is not strictly necessary for [Supporting managing and running on the new Kubernetes version](#supporting-managing-and-running-on-the-new-kubernetes-version).
98+
* Prior art to release envtest binaries: https://github.com/kubernetes-sigs/kubebuilder/pull/3864
8699
* Prior art: #7193
87100
* [ ] Bump conversion-gen via `CONVERSION_GEN_VER` in `Makefile`
88101
* Prior art: #7118
102+
103+
After release of CAPI v1.X.x (that supports Kubernetes v1.Y):

.github/ISSUE_TEMPLATE/release_tracking.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,4 +81,7 @@ Continuously:
8181
If and when necessary:
8282
* [ ] [Release Lead] [Track] [Bump the Cluster API apiVersion](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/release/release-tasks.md#optional-track-bump-the-cluster-api-apiversion)
8383
* [ ] [Release Lead] [Track] [Bump the Kubernetes version](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/release/release-tasks.md#optional-track-bump-the-kubernetes-version)
84-
* [ ] [Release Lead] [Track Release and Improvement tasks](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/release/release-tasks.md#optional-track-release-and-improvement-tasks)
84+
* [ ] [Release Lead] [Track Release and Improvement tasks](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/release/release-tasks.md#optional-track-release-and-improvement-tasks)
85+
86+
/priority critical-urgent
87+
/kind feature

.github/dependabot.yaml

Lines changed: 19 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -7,33 +7,48 @@ updates:
77
directory: "/"
88
schedule:
99
interval: "weekly"
10+
groups:
11+
all-github-actions:
12+
patterns: [ "*" ]
1013
commit-message:
1114
prefix: ":seedling:"
1215
labels:
1316
- "area/ci"
1417
- "ok-to-test"
1518

16-
# Main Go module
19+
# Go modules
1720
- package-ecosystem: "gomod"
18-
directory: "/"
21+
directories:
22+
- "/"
23+
- "/test"
24+
- "/hack/tools"
1925
schedule:
2026
interval: "weekly"
2127
day: "monday"
2228
## group all dependencies with a k8s.io prefix into a single PR.
2329
groups:
24-
kubernetes:
25-
patterns: [ "k8s.io/*" ]
30+
all-go-mod-patch-and-minor:
31+
patterns: [ "*" ]
32+
update-types: [ "patch", "minor" ]
2633
ignore:
2734
# Ignore controller-runtime as its upgraded manually.
2835
- dependency-name: "sigs.k8s.io/controller-runtime"
2936
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
3037
# Ignore k8s and its transitives modules as they are upgraded manually together with controller-runtime.
3138
- dependency-name: "k8s.io/*"
3239
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
40+
- dependency-name: "github.com/prometheus/*"
41+
update-types: [ "version-update:semver-major", "version-update:semver-minor"]
3342
- dependency-name: "go.etcd.io/*"
3443
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
3544
- dependency-name: "google.golang.org/grpc"
3645
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
46+
# Note: We have to keep this 100% in sync with k8s.io, so we get exactly the behavior
47+
# that the k8s.io CEL code expects.
48+
- dependency-name: "github.com/google/cel-go"
49+
# Ignore kind as its upgraded manually.
50+
- dependency-name: "sigs.k8s.io/kind"
51+
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
3752
# Bumping the kustomize API independently can break compatibility with client-go as they share k8s.io/kube-openapi as a dependency.
3853
- dependency-name: "sigs.k8s.io/kustomize/api"
3954
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
@@ -42,63 +57,3 @@ updates:
4257
labels:
4358
- "area/dependency"
4459
- "ok-to-test"
45-
46-
# Test Go module
47-
- package-ecosystem: "gomod"
48-
directory: "/test"
49-
schedule:
50-
interval: "weekly"
51-
day: "tuesday"
52-
## group all dependencies with a k8s.io prefix into a single PR.
53-
groups:
54-
kubernetes:
55-
patterns: [ "k8s.io/*" ]
56-
ignore:
57-
# Ignore controller-runtime as its upgraded manually.
58-
- dependency-name: "sigs.k8s.io/controller-runtime"
59-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
60-
# Ignore k8s and its transitives modules as they are upgraded manually together with controller-runtime.
61-
- dependency-name: "k8s.io/*"
62-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
63-
- dependency-name: "go.etcd.io/*"
64-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
65-
- dependency-name: "google.golang.org/grpc"
66-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
67-
# Bumping the kustomize API independently can break compatibility with client-go as they share k8s.io/kube-openapi as a dependency.
68-
- dependency-name: "sigs.k8s.io/kustomize/api"
69-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
70-
commit-message:
71-
prefix: ":seedling:"
72-
labels:
73-
- "area/dependency"
74-
- "ok-to-test"
75-
76-
# Hack/tools Go module
77-
- package-ecosystem: "gomod"
78-
directory: "/hack/tools"
79-
schedule:
80-
interval: "weekly"
81-
day: "wednesday"
82-
## group all dependencies with a k8s.io prefix into a single PR.
83-
groups:
84-
kubernetes:
85-
patterns: [ "k8s.io/*" ]
86-
ignore:
87-
# Ignore controller-runtime as its upgraded manually.
88-
- dependency-name: "sigs.k8s.io/controller-runtime"
89-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
90-
# Ignore k8s and its transitives modules as they are upgraded manually together with controller-runtime.
91-
- dependency-name: "k8s.io/*"
92-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
93-
- dependency-name: "go.etcd.io/*"
94-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
95-
- dependency-name: "google.golang.org/grpc"
96-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
97-
# Bumping the kustomize API independently can break compatibility with client-go as they share k8s.io/kube-openapi as a dependency.
98-
- dependency-name: "sigs.k8s.io/kustomize/api"
99-
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
100-
commit-message:
101-
prefix: ":seedling:"
102-
labels:
103-
- "area/dependency"
104-
- "ok-to-test"

.github/workflows/pr-gh-workflow-approve.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ on:
88
- reopened
99
- synchronize
1010

11+
permissions: {}
12+
1113
jobs:
1214
approve:
1315
name: Approve ok-to-test

.github/workflows/pr-md-link-check.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ jobs:
1414
name: Broken Links
1515
runs-on: ubuntu-latest
1616
steps:
17-
- uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # tag=v4.1.2
17+
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # tag=v4.1.7
1818
- uses: gaurav-nelson/github-action-markdown-link-check@5c5dfc0ac2e225883c0e5f03a85311ec2830d368 # tag=v1
1919
with:
2020
use-quiet-mode: 'yes'
2121
config-file: .markdownlinkcheck.json
2222
check-modified-files-only: 'yes'
23-
base-branch: release-1.7
23+
base-branch: release-1.8

.github/workflows/release.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,12 @@ jobs:
1717
release_tag: ${{ steps.release-version.outputs.release_version }}
1818
steps:
1919
- name: Checkout code
20-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # tag=v4.1.2
20+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # tag=v4.1.7
2121
with:
2222
fetch-depth: 0
2323
- name: Get changed files
2424
id: changed-files
25-
uses: tj-actions/changed-files@2d756ea4c53f7f6b397767d8723b3a10a9f35bf2 # tag=v44.0.0
25+
uses: tj-actions/changed-files@6b2903bdce6310cfbddd87c418f253cf29b2dec9 # tag=v44.5.6
2626
- name: Get release version
2727
id: release-version
2828
run: |
@@ -87,14 +87,14 @@ jobs:
8787
env:
8888
RELEASE_TAG: ${{needs.push_release_tags.outputs.release_tag}}
8989
- name: checkout code
90-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # tag=v4.1.2
90+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # tag=v4.1.7
9191
with:
9292
fetch-depth: 0
9393
ref: ${{ env.RELEASE_TAG }}
9494
- name: Calculate go version
9595
run: echo "go_version=$(make go-version)" >> $GITHUB_ENV
9696
- name: Set up Go
97-
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # tag=v5.0.0
97+
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # tag=v5.0.2
9898
with:
9999
go-version: ${{ env.go_version }}
100100
- name: generate release artifacts
@@ -105,7 +105,7 @@ jobs:
105105
curl -L "https://raw.githubusercontent.com/${{ github.repository }}/main/CHANGELOG/${{ env.RELEASE_TAG }}.md" \
106106
-o "${{ env.RELEASE_TAG }}.md"
107107
- name: Release
108-
uses: softprops/action-gh-release@9d7c94cfd0a1f3ed45544c887983e9fa900f0564 # tag=v2.0.4
108+
uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 # tag=v2.0.8
109109
with:
110110
draft: true
111111
files: out/*

.github/workflows/weekly-md-link-check.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ jobs:
1414
strategy:
1515
fail-fast: false
1616
matrix:
17-
branch: [ main, release-1.6, release-1.5 ]
17+
branch: [ main, release-1.7, release-1.6 ]
1818
runs-on: ubuntu-latest
1919
steps:
20-
- uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # tag=v4.1.2
20+
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # tag=v4.1.7
2121
with:
2222
ref: ${{ matrix.branch }}
2323
- uses: gaurav-nelson/github-action-markdown-link-check@5c5dfc0ac2e225883c0e5f03a85311ec2830d368 # tag=v1

.github/workflows/weekly-security-scan.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,19 @@ jobs:
1313
strategy:
1414
fail-fast: false
1515
matrix:
16-
branch: [ main, release-1.6, release-1.5 ]
16+
branch: [ main, release-1.7, release-1.6 ]
1717
name: Trivy
1818
runs-on: ubuntu-latest
1919
steps:
2020
- name: Check out code
21-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # tag=v4.1.2
21+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # tag=v4.1.7
2222
with:
2323
ref: ${{ matrix.branch }}
2424
- name: Calculate go version
2525
id: vars
2626
run: echo "go_version=$(make go-version)" >> $GITHUB_OUTPUT
2727
- name: Set up Go
28-
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # tag=v5.0.0
28+
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # tag=v5.0.2
2929
with:
3030
go-version: ${{ steps.vars.outputs.go_version }}
3131
- name: Run verify security target

.github/workflows/weekly-test-release.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ jobs:
1717
strategy:
1818
fail-fast: false
1919
matrix:
20-
branch: [ main, release-1.6, release-1.5 ]
20+
branch: [ main, release-1.7, release-1.6 ]
2121
runs-on: ubuntu-latest
2222
steps:
23-
- uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # tag=v4.1.2
23+
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # tag=v4.1.7
2424
with:
2525
ref: ${{ matrix.branch }}
2626
fetch-depth: 0
@@ -32,7 +32,7 @@ jobs:
3232
- name: Calculate go version
3333
run: echo "go_version=$(make go-version)" >> $GITHUB_ENV
3434
- name: Set up Go
35-
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # tag=v5.0.0
35+
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # tag=v5.0.2
3636
with:
3737
go-version: ${{ env.go_version }}
3838
- name: Test release

0 commit comments

Comments
 (0)