diff --git a/cmd/kops/integration_test.go b/cmd/kops/integration_test.go index d5f70e4123..d3fbf00e72 100644 --- a/cmd/kops/integration_test.go +++ b/cmd/kops/integration_test.go @@ -181,11 +181,13 @@ func (i *integrationTest) withAddons(addons ...string) *integrationTest { } const ( - dnsControllerAddon = "dns-controller.addons.k8s.io-k8s-1.12" awsCCMAddon = "aws-cloud-controller.addons.k8s.io-k8s-1.18" awsEBSCSIAddon = "aws-ebs-csi-driver.addons.k8s.io-k8s-1.17" - leaderElectionAddon = "leader-migration.rbac.addons.k8s.io-k8s-1.23" + calicoAddon = "networking.projectcalico.org-k8s-1.23" certManagerAddon = "certmanager.io-k8s-1.16" + ciliumAddon = "networking.cilium.io-k8s-1.16" + dnsControllerAddon = "dns-controller.addons.k8s.io-k8s-1.12" + leaderElectionAddon = "leader-migration.rbac.addons.k8s.io-k8s-1.23" ) // TestMinimal runs the test on a minimum configuration, similar to kops create cluster minimal.example.com --zones us-west-1a @@ -325,7 +327,7 @@ func TestMinimalIPv6Private(t *testing.T) { // TestMinimalIPv6Calico runs the test on a minimum IPv6 configuration with Calico func TestMinimalIPv6Calico(t *testing.T) { newIntegrationTest("minimal-ipv6.example.com", "minimal-ipv6-calico"). - withAddons(awsCCMAddon, awsEBSCSIAddon, calicoAddon, dnsControllerAddon). + withAddons(calicoAddon, awsCCMAddon, awsEBSCSIAddon, dnsControllerAddon, leaderElectionAddon). runTestTerraformAWS(t) newIntegrationTest("minimal-ipv6.example.com", "minimal-ipv6-calico").runTestCloudformation(t) } @@ -405,21 +407,17 @@ func TestPrivateFlannel(t *testing.T) { runTestTerraformAWS(t) } -const calicoAddon = "networking.projectcalico.org-k8s-1.16" - // TestPrivateCalico runs the test on a configuration with private topology, calico networking func TestPrivateCalico(t *testing.T) { newIntegrationTest("privatecalico.example.com", "privatecalico"). withPrivate(). - withAddons(calicoAddon, dnsControllerAddon). + withAddons(calicoAddon, awsCCMAddon, awsEBSCSIAddon, dnsControllerAddon, leaderElectionAddon). runTestTerraformAWS(t) newIntegrationTest("privatecalico.example.com", "privatecalico"). withPrivate(). runTestCloudformation(t) } -const ciliumAddon = "networking.cilium.io-k8s-1.16" - func TestPrivateCilium(t *testing.T) { newIntegrationTest("privatecilium.example.com", "privatecilium"). withPrivate(). diff --git a/tests/integration/update_cluster/minimal-ipv6-calico/in-v1alpha2.yaml b/tests/integration/update_cluster/minimal-ipv6-calico/in-v1alpha2.yaml index c5cd270afa..290532cc8d 100644 --- a/tests/integration/update_cluster/minimal-ipv6-calico/in-v1alpha2.yaml +++ b/tests/integration/update_cluster/minimal-ipv6-calico/in-v1alpha2.yaml @@ -8,12 +8,6 @@ spec: loadBalancer: type: Public class: Network - kubernetesApiAccess: - - 0.0.0.0/0 - - ::/0 - sshAccess: - - 0.0.0.0/0 - - ::/0 channel: stable cloudConfig: awsEBSCSIDriver: @@ -30,25 +24,33 @@ spec: - instanceGroup: master-us-test-1a name: us-test-1a name: events - iam: {} + iam: + allowContainerRegistry: true + legacy: false kubelet: anonymousAuth: false - kubernetesVersion: v1.21.0 + kubernetesApiAccess: + - 0.0.0.0/0 + - ::/0 + kubernetesVersion: v1.24.0 masterInternalName: api.internal.minimal-ipv6.example.com masterPublicName: api.minimal-ipv6.example.com networkCIDR: 172.20.0.0/16 networking: calico: {} nonMasqueradeCIDR: ::/0 - topology: - masters: public - nodes: public + sshAccess: + - 0.0.0.0/0 + - ::/0 subnets: - cidr: 172.20.32.0/19 ipv6CIDR: 2001:db8:0:111::/64 name: us-test-1a type: Public zone: us-test-1a + topology: + masters: public + nodes: public --- @@ -56,34 +58,42 @@ apiVersion: kops.k8s.io/v1alpha2 kind: InstanceGroup metadata: creationTimestamp: "2016-12-10T22:42:28Z" - name: nodes labels: kops.k8s.io/cluster: minimal-ipv6.example.com -spec: - associatePublicIp: true - image: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-10-21 - machineType: t2.medium - maxSize: 2 - minSize: 2 - role: Node - subnets: - - us-test-1a - ---- - -apiVersion: kops.k8s.io/v1alpha2 -kind: InstanceGroup -metadata: - creationTimestamp: "2016-12-10T22:42:28Z" name: master-us-test-1a - labels: - kops.k8s.io/cluster: minimal-ipv6.example.com spec: - associatePublicIp: true image: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-10-21 - machineType: m3.medium + instanceMetadata: + httpPutResponseHopLimit: 1 + httpTokens: required + machineType: t3.medium maxSize: 1 minSize: 1 + nodeLabels: + kops.k8s.io/instancegroup: master-us-test-1a role: Master subnets: - us-test-1a + +--- + +apiVersion: kops.k8s.io/v1alpha2 +kind: InstanceGroup +metadata: + creationTimestamp: "2016-12-10T22:42:28Z" + labels: + kops.k8s.io/cluster: minimal-ipv6.example.com + name: nodes +spec: + image: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-10-21 + instanceMetadata: + httpPutResponseHopLimit: 3 + httpTokens: required + machineType: t3.medium + maxSize: 1 + minSize: 1 + nodeLabels: + kops.k8s.io/instancegroup: nodes + role: Node + subnets: + - us-test-1a diff --git a/tests/integration/update_cluster/privatecalico/in-v1alpha2.yaml b/tests/integration/update_cluster/privatecalico/in-v1alpha2.yaml index 0458aeaa46..f24b22e8b2 100644 --- a/tests/integration/update_cluster/privatecalico/in-v1alpha2.yaml +++ b/tests/integration/update_cluster/privatecalico/in-v1alpha2.yaml @@ -4,9 +4,11 @@ metadata: creationTimestamp: "2016-12-12T04:13:14Z" name: privatecalico.example.com spec: - kubernetesApiAccess: - - 0.0.0.0/0 channel: stable + cloudConfig: + awsEBSCSIDriver: + enabled: true + cloudControllerManager: {} cloudProvider: aws configBase: memfs://clusters.example.com/privatecalico.example.com etcdClusters: @@ -18,10 +20,15 @@ spec: - instanceGroup: master-us-test-1a name: us-test-1a name: events - iam: {} + iam: + allowContainerRegistry: true + legacy: false kubelet: anonymousAuth: false - kubernetesVersion: v1.21.0 + kubernetesApiAccess: + - 0.0.0.0/0 + - ::/0 + kubernetesVersion: v1.24.0 masterInternalName: api.internal.privatecalico.example.com masterPublicName: api.privatecalico.example.com networkCIDR: 172.20.0.0/16 @@ -30,9 +37,7 @@ spec: nonMasqueradeCIDR: 100.64.0.0/10 sshAccess: - 0.0.0.0/0 - topology: - masters: private - nodes: private + - ::/0 subnets: - cidr: 172.20.32.0/19 name: us-test-1a @@ -42,6 +47,9 @@ spec: name: utility-us-test-1a type: Utility zone: us-test-1a + topology: + masters: private + nodes: private --- @@ -49,13 +57,15 @@ apiVersion: kops.k8s.io/v1alpha2 kind: InstanceGroup metadata: creationTimestamp: "2016-12-12T04:13:15Z" - name: master-us-test-1a labels: kops.k8s.io/cluster: privatecalico.example.com + name: master-us-test-1a spec: - associatePublicIp: true image: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-10-21 - machineType: m3.medium + instanceMetadata: + httpPutResponseHopLimit: 1 + httpTokens: required + machineType: t3.medium maxSize: 1 minSize: 1 role: Master @@ -68,13 +78,15 @@ apiVersion: kops.k8s.io/v1alpha2 kind: InstanceGroup metadata: creationTimestamp: "2016-12-12T04:13:15Z" - name: nodes labels: kops.k8s.io/cluster: privatecalico.example.com + name: nodes spec: - associatePublicIp: true image: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-10-21 - machineType: t2.medium + instanceMetadata: + httpPutResponseHopLimit: 3 + httpTokens: required + machineType: t3.medium maxSize: 2 minSize: 2 role: Node @@ -88,13 +100,13 @@ apiVersion: kops.k8s.io/v1alpha2 kind: InstanceGroup metadata: creationTimestamp: "2016-12-14T15:32:41Z" - name: bastion labels: kops.k8s.io/cluster: privatecalico.example.com + name: bastion spec: associatePublicIp: true image: kope.io/k8s-1.4-debian-jessie-amd64-hvm-ebs-2016-10-21 - machineType: t2.micro + machineType: t3.micro maxSize: 1 minSize: 1 role: Bastion