@@ -33,7 +33,9 @@ import (
3333var (
3434 capoRelease011 string
3535 capoRelease012 string
36+ capoRelease013 string
3637 capiRelease110 string
38+ capiRelease111 string
3739)
3840
3941var _ = Describe ("When testing clusterctl upgrades for CAPO (v0.11=>current) and ORC (v1.0.2=>current) [clusterctl-upgrade]" , func () {
@@ -103,3 +105,42 @@ var _ = Describe("When testing clusterctl upgrades for CAPO (v0.12=>current) and
103105 }
104106 })
105107})
108+
109+ var _ = Describe ("When testing clusterctl upgrades for CAPO (v0.13=>current) and ORC (v1.0.2=>current)[clusterctl-upgrade]" , func () {
110+ BeforeEach (func (ctx context.Context ) {
111+ setDownloadE2EImageEnvVar ()
112+ // Note: This gives the version without the 'v' prefix, so we need to add it below.
113+ // The "latest-v0.13" string means that also pre-releases will be considered.
114+ capoRelease013 ,
err = clusterctl .
ResolveRelease (
ctx ,
"go://github.com/kubernetes-sigs/[email protected] " )
115+ Expect (err ).ToNot (HaveOccurred (), "failed to get stable release of CAPO" )
116+ capoRelease013 = "v" + capoRelease013
117+ // Note: This gives the version without the 'v' prefix, so we need to add it below
118+ // We need CAPI v1.11 here for clusterctl init with the v1beta2 contract.
119+ capiRelease111 , err = capi_e2e .GetStableReleaseOfMinor (ctx , "1.11" )
120+ Expect (err ).ToNot (HaveOccurred (), "failed to get stable release of CAPI" )
121+ capiRelease111 = "v" + capiRelease111
122+ capiRelease110 , err = capi_e2e .GetStableReleaseOfMinor (ctx , "1.10" )
123+ Expect (err ).ToNot (HaveOccurred (), "failed to get stable release of CAPI" )
124+ capiRelease110 = "v" + capiRelease110
125+ })
126+
127+ capi_e2e .ClusterctlUpgradeSpec (context .TODO (), func () capi_e2e.ClusterctlUpgradeSpecInput {
128+ return capi_e2e.ClusterctlUpgradeSpecInput {
129+ E2EConfig : e2eCtx .E2EConfig ,
130+ ClusterctlConfigPath : e2eCtx .Environment .ClusterctlConfigPath ,
131+ BootstrapClusterProxy : e2eCtx .Environment .BootstrapClusterProxy ,
132+ ArtifactFolder : e2eCtx .Settings .ArtifactFolder ,
133+ SkipCleanup : false ,
134+ InitWithBinary : "https://github.com/kubernetes-sigs/cluster-api/releases/download/" + capiRelease111 + "/clusterctl-{OS}-{ARCH}" ,
135+ InitWithProvidersContract : "v1beta1" ,
136+ InitWithInfrastructureProviders : []string {"openstack:" + capoRelease013 },
137+ InitWithCoreProvider : "cluster-api:" + capiRelease110 ,
138+ InitWithBootstrapProviders : []string {"kubeadm:" + capiRelease110 },
139+ InitWithControlPlaneProviders : []string {"kubeadm:" + capiRelease110 },
140+ MgmtFlavor : shared .FlavorDefault ,
141+ WorkloadFlavor : shared .FlavorDefault ,
142+ InitWithKubernetesVersion : e2eCtx .E2EConfig .MustGetVariable (shared .KubernetesVersion ),
143+ InitWithRuntimeExtensionProviders : []string {"openstack-resource-controller:v1.0.2" },
144+ }
145+ })
146+ })
0 commit comments