@@ -20,6 +20,8 @@ limitations under the License.
20
20
package e2e
21
21
22
22
import (
23
+ "runtime"
24
+
23
25
. "github.com/onsi/ginkgo/v2"
24
26
"k8s.io/utils/pointer"
25
27
@@ -32,6 +34,11 @@ var _ = Describe("When testing clusterctl upgrades (v0.3=>v1.5=>current)", func(
32
34
// NOTE: The combination of v0.3=>v1.5=>current allows us to verify this without being forced to upgrade
33
35
// the management cluster in the middle of the test as all 3 versions are ~ compatible with the same mgmt and workload Kubernetes versions.
34
36
// Additionally, clusterctl v1.5 still allows the upgrade of management clusters from v1alpha3 (v1.6 doesn't).
37
+ clusterctlDownloadURL03 := "https://github.com/kubernetes-sigs/cluster-api/releases/download/v0.3.25/clusterctl-{OS}-{ARCH}"
38
+ if runtime .GOOS == "darwin" {
39
+ // There is no arm64 binary for v0.3.x, so we'll use the amd64 one.
40
+ clusterctlDownloadURL03 = "https://github.com/kubernetes-sigs/cluster-api/releases/download/v0.3.25/clusterctl-darwin-amd64"
41
+ }
35
42
ClusterctlUpgradeSpec (ctx , func () ClusterctlUpgradeSpecInput {
36
43
return ClusterctlUpgradeSpecInput {
37
44
E2EConfig : e2eConfig ,
@@ -41,7 +48,7 @@ var _ = Describe("When testing clusterctl upgrades (v0.3=>v1.5=>current)", func(
41
48
SkipCleanup : skipCleanup ,
42
49
InfrastructureProvider : pointer .String ("docker" ),
43
50
// Configuration for the initial provider deployment.
44
- InitWithBinary : "https://github.com/kubernetes-sigs/cluster-api/releases/download/v0.3.25/clusterctl-{OS}-{ARCH}" ,
51
+ InitWithBinary : clusterctlDownloadURL03 ,
45
52
// We have to pin the providers because with `InitWithProvidersContract` the test would
46
53
// use the latest version for the contract.
47
54
InitWithCoreProvider : "cluster-api:v0.3.25" ,
@@ -58,11 +65,11 @@ var _ = Describe("When testing clusterctl upgrades (v0.3=>v1.5=>current)", func(
58
65
// Upgrade to v1.5.
59
66
// Note: v1.5 is the highest version we can use as it's the last one
60
67
// that is able to upgrade from a v1alpha3 management cluster.
61
- WithBinary : "https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.5.5 /clusterctl-{OS}-{ARCH}" ,
62
- CoreProvider : "cluster-api:v1.5.5 " ,
63
- BootstrapProviders : []string {"kubeadm:v1.5.5 " },
64
- ControlPlaneProviders : []string {"kubeadm:v1.5.5 " },
65
- InfrastructureProviders : []string {"docker:v1.5.5 " },
68
+ WithBinary : "https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.5.0 /clusterctl-{OS}-{ARCH}" ,
69
+ CoreProvider : "cluster-api:v1.5.0 " ,
70
+ BootstrapProviders : []string {"kubeadm:v1.5.0 " },
71
+ ControlPlaneProviders : []string {"kubeadm:v1.5.0 " },
72
+ InfrastructureProviders : []string {"docker:v1.5.0 " },
66
73
},
67
74
{ // Upgrade to latest v1beta1.
68
75
Contract : clusterv1 .GroupVersion .Version ,
@@ -115,11 +122,11 @@ var _ = Describe("When testing clusterctl upgrades (v0.4=>v1.5=>current)", func(
115
122
// Upgrade to v1.5.
116
123
// Note: v1.5 is a version we can use as it's
117
124
// able to upgrade from a v1alpha4 management cluster (v1.6 would be able to as well)
118
- WithBinary : "https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.5.5 /clusterctl-{OS}-{ARCH}" ,
119
- CoreProvider : "cluster-api:v1.5.5 " ,
120
- BootstrapProviders : []string {"kubeadm:v1.5.5 " },
121
- ControlPlaneProviders : []string {"kubeadm:v1.5.5 " },
122
- InfrastructureProviders : []string {"docker:v1.5.5 " },
125
+ WithBinary : "https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.5.0 /clusterctl-{OS}-{ARCH}" ,
126
+ CoreProvider : "cluster-api:v1.5.0 " ,
127
+ BootstrapProviders : []string {"kubeadm:v1.5.0 " },
128
+ ControlPlaneProviders : []string {"kubeadm:v1.5.0 " },
129
+ InfrastructureProviders : []string {"docker:v1.5.0 " },
123
130
},
124
131
{ // Upgrade to latest v1beta1.
125
132
Contract : clusterv1 .GroupVersion .Version ,
0 commit comments