You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/book/src/developers/releasing.md
+19-8Lines changed: 19 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -44,29 +44,40 @@ Sometimes pull requests touch a large number of files and are more likely to cre
44
44
- Open a PR in https://github.com/kubernetes/test-infra to change this [line](https://github.com/kubernetes/test-infra/blob/25db54eb9d52e08c16b3601726d8f154f8741025/config/prow/plugins.yaml#L344)
45
45
- Example PR: https://github.com/kubernetes/test-infra/pull/16827
46
46
47
-
### Update test capz provider metadata.yaml (skip for patch releases)
47
+
### Update test provider versions (skip for patch releases)
48
+
49
+
This can be done in parallel with release publishing and does not impact the release or its artifacts.
50
+
51
+
#### Update test capz provider metadata.yaml
48
52
49
53
Using that same next release version used to create a new milestone, update the the capz provider [metadata.yaml](https://github.com/kubernetes-sigs/cluster-api-provider-azure/blob/main/test/e2e/data/shared/v1beta1_provider/metadata.yaml) that we use to run PR and periodic cluster E2E tests against the main branch templates.
50
54
51
-
For example, if the latest stable API version of capz that we run E2E tests against is `v1beta`, and we're releasing `v1.4.0`, and our next release version is `v1.5.0`, then we want to ensure that the `metadata.yaml` defines a contract between `1.5` and `v1beta1`:
55
+
For example, if the latest stable API version of capz that we run E2E tests against is `v1beta`, and we're releasing `v1.12.0`, and our next release version is `v1.13.0`, then we want to ensure that the `metadata.yaml` defines a contract between `v1.13.0` and `v1beta1`:
52
56
53
57
```yaml
54
58
apiVersion: clusterctl.cluster.x-k8s.io/v1alpha3
55
59
releaseSeries:
56
-
- major: 0
57
-
minor: 5
58
-
contract: v1alpha4
59
60
- major: 1
60
-
minor: 5
61
+
minor: 11
62
+
contract: v1beta1
63
+
- major: 1
64
+
minor: 12
65
+
contract: v1beta1
66
+
- major: 1
67
+
minor: 13
61
68
contract: v1beta1
62
69
```
63
70
64
-
Additionally, we need to update the `type: InfrastructureProvider` spec in [azure-dev.yaml](https://github.com/kubernetes-sigs/cluster-api-provider-azure/blob/main/test/e2e/config/azure-dev.yaml) to express that our intent is to test (using the above example) `1.5`. By convention we use a sentinel patch version "99" to express "any patch version". In this example we want to look for the `type: InfrastructureProvider` with a `name` value of `v1.4.99` and update it to `v1.5.99`:
71
+
Additionally, we need to update the `type: InfrastructureProvider` spec in [azure-dev.yaml](https://github.com/kubernetes-sigs/cluster-api-provider-azure/blob/main/test/e2e/config/azure-dev.yaml) to express that our intent is to test (using the above example) `1.5`. By convention we use a sentinel patch version "99" to express "any patch version". In this example we want to look for the `type: InfrastructureProvider` with a `name` value of `v1.12.99` and update it to `v1.13.99`:
65
72
66
73
```
67
-
- name: v1.5.99 # "vNext"; use manifests from local source files
74
+
- name: v1.13.99 # "vNext"; use manifests from local source files
68
75
```
69
76
77
+
#### Update clusterctl API version upgrade tests
78
+
79
+
Update the [API version upgrade tests](https://github.com/kubernetes-sigs/cluster-api-provider-azure/blob/v1.12.1/test/e2e/capi_test.go#L214) to use the oldest supported release versions of CAPI and CAPZ after the release is cut as "Init" provider versions. See [this PR](https://github.com/kubernetes-sigs/cluster-api-provider-azure/pull/4433) for more details.
80
+
70
81
### Create a tag
71
82
72
83
Before you create a GPG-signed tag you may need to prepare your local environment's TTY to properly hoist your signed key into the flow of the `git tag` command:
- name: v1.5.4#latest patch of earliest minor in supported v1beta1 releases; this is used for v1beta1 old --> v1beta1 latest clusterctl upgrades test only.
- name: v1.5.4#latest patch of earliest minor in supported v1beta1 releases; this is used for v1beta1 old --> v1beta1 latest clusterctl upgrades test only.
- name: v1.5.4#latest patch of earliest minor in supported v1beta1 releases; this is used for v1beta1 old --> v1beta1 latest clusterctl upgrades test only.
- name: v1.9.8#latest patch of earliest minor in supported v1beta1 releases; this is used for v1beta1 old --> v1beta1 latest clusterctl upgrades test only.
0 commit comments