Sitelet https://github.com/hakman/kops/commit/b64599875e6eead6fd8c7597bf8ba28164449c89
Skip to content

Commit b645998

Browse files
committed
revert: retain orphaned gossip fixtures
Leave the unregistered gossip fixtures in place temporarily so their bulk deletion can be reviewed and merged separately.
1 parent 8babfe0 commit b645998

195 files changed

Lines changed: 30312 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
#!/usr/bin/env bash
2+
3+
# Copyright 2026 The Kubernetes Authors.
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
# Like upgrade-ab, but on a gossip cluster — exercises hybrid worker bootstrap (#18245).
18+
19+
REPO_ROOT=$(git rev-parse --show-toplevel);
20+
21+
# k8s.local suffix triggers gossip mode across all clouds.
22+
export KOPS_DNS_DOMAIN="${KOPS_DNS_DOMAIN:-k8s.local}"
23+
if [[ "${KOPS_DNS_DOMAIN}" != "k8s.local" && "${KOPS_DNS_DOMAIN}" != *.k8s.local ]]; then
24+
>&2 echo "KOPS_DNS_DOMAIN must be (or end in) k8s.local for gossip; got ${KOPS_DNS_DOMAIN}"
25+
exit 1
26+
fi
27+
28+
source "${REPO_ROOT}"/tests/e2e/scenarios/lib/common.sh
29+
source "${REPO_ROOT}"/tests/e2e/scenarios/lib/upgrade.sh
30+
31+
# Plain clusters only; the many-addons template is AWS-specific.
32+
unset KOPS_TEMPLATE
33+
34+
# Gossip needs an NLB on AWS, any LB elsewhere.
35+
case "${CLOUD_PROVIDER}" in
36+
aws)
37+
cloud_args="--api-loadbalancer-type=public --api-loadbalancer-class=network"
38+
;;
39+
gce)
40+
cloud_args="--api-loadbalancer-type=public --gce-service-account=default"
41+
;;
42+
*)
43+
cloud_args="--api-loadbalancer-type=public"
44+
;;
45+
esac
46+
47+
# Drop dns-controller's priorityClassName so kops `validate cluster` ignores the pod.
48+
# The new image side-loads only on newly bootstrapped nodes, so until the rolling
49+
# update replaces the old ones the pod stays Pending, and would fail validation.
50+
override="--override=spec.externalDns.priorityClassName="
51+
52+
kops-upgrade "--networking cilium --dns=private ${cloud_args} ${override} ${KOPS_EXTRA_FLAGS:-}"
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
apiVersion: kops.k8s.io/v1alpha2
2+
kind: Cluster
3+
metadata:
4+
creationTimestamp: "2017-01-01T00:00:00Z"
5+
name: gossip.k8s.local
6+
spec:
7+
api:
8+
loadBalancer:
9+
class: Network
10+
type: Public
11+
authorization:
12+
rbac: {}
13+
channel: stable
14+
cloudProvider: aws
15+
configBase: memfs://tests/gossip.k8s.local
16+
etcdClusters:
17+
- cpuRequest: 200m
18+
etcdMembers:
19+
- encryptedVolume: true
20+
instanceGroup: control-plane-us-test-1a
21+
name: a
22+
manager:
23+
backupRetentionDays: 90
24+
memoryRequest: 100Mi
25+
name: main
26+
- cpuRequest: 100m
27+
etcdMembers:
28+
- encryptedVolume: true
29+
instanceGroup: control-plane-us-test-1a
30+
name: a
31+
manager:
32+
backupRetentionDays: 90
33+
memoryRequest: 100Mi
34+
name: events
35+
iam:
36+
allowContainerRegistry: true
37+
legacy: false
38+
kubelet:
39+
anonymousAuth: false
40+
kubernetesApiAccess:
41+
- 0.0.0.0/0
42+
- ::/0
43+
kubernetesVersion: v1.36.0
44+
networkCIDR: 172.20.0.0/16
45+
networking:
46+
cni: {}
47+
nonMasqueradeCIDR: 100.64.0.0/10
48+
sshAccess:
49+
- 0.0.0.0/0
50+
- ::/0
51+
subnets:
52+
- cidr: 172.20.0.0/16
53+
name: us-test-1a
54+
type: Public
55+
zone: us-test-1a
56+
topology:
57+
dns:
58+
type: Private
59+
60+
---
61+
62+
apiVersion: kops.k8s.io/v1alpha2
63+
kind: InstanceGroup
64+
metadata:
65+
creationTimestamp: "2017-01-01T00:00:00Z"
66+
labels:
67+
kops.k8s.io/cluster: gossip.k8s.local
68+
name: control-plane-us-test-1a
69+
spec:
70+
image: 099720109477/ubuntu/images/hvm-ssd-gp3/ubuntu-noble-24.04-amd64-server-20260610
71+
machineType: m3.medium
72+
maxSize: 1
73+
minSize: 1
74+
nodeLabels:
75+
kops.k8s.io/instancegroup: control-plane-us-test-1a
76+
role: Master
77+
subnets:
78+
- us-test-1a
79+
80+
---
81+
82+
apiVersion: kops.k8s.io/v1alpha2
83+
kind: InstanceGroup
84+
metadata:
85+
creationTimestamp: "2017-01-01T00:00:00Z"
86+
labels:
87+
kops.k8s.io/cluster: gossip.k8s.local
88+
name: nodes-us-test-1a
89+
spec:
90+
image: 099720109477/ubuntu/images/hvm-ssd-gp3/ubuntu-noble-24.04-amd64-server-20260610
91+
machineType: t2.medium
92+
maxSize: 1
93+
minSize: 1
94+
nodeLabels:
95+
kops.k8s.io/instancegroup: nodes-us-test-1a
96+
role: Node
97+
subnets:
98+
- us-test-1a
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
ClusterName: gossip.k8s.local
2+
Zones:
3+
- us-test-1a
4+
CloudProvider: aws
5+
Networking: cni
6+
KubernetesVersion: v1.36.0
7+
DNSType: Private
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
apiVersion: kops.k8s.io/v1alpha2
2+
kind: Cluster
3+
metadata:
4+
creationTimestamp: "2017-01-01T00:00:00Z"
5+
name: gossip.k8s.local
6+
spec:
7+
api:
8+
loadBalancer:
9+
type: Public
10+
authorization:
11+
rbac: {}
12+
channel: stable
13+
cloudConfig:
14+
azure:
15+
adminUser: kops
16+
storageAccountID: /subscriptions/sub-321/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/teststorage
17+
subscriptionId: sub-123
18+
tenantId: ""
19+
cloudProvider: azure
20+
configBase: memfs://tests/gossip.k8s.local
21+
etcdClusters:
22+
- cpuRequest: 200m
23+
etcdMembers:
24+
- instanceGroup: control-plane-eastus-1
25+
name: etcd-1
26+
manager:
27+
backupRetentionDays: 90
28+
memoryRequest: 100Mi
29+
name: main
30+
- cpuRequest: 100m
31+
etcdMembers:
32+
- instanceGroup: control-plane-eastus-1
33+
name: etcd-1
34+
manager:
35+
backupRetentionDays: 90
36+
memoryRequest: 100Mi
37+
name: events
38+
iam:
39+
allowContainerRegistry: true
40+
legacy: false
41+
kubelet:
42+
anonymousAuth: false
43+
kubernetesApiAccess:
44+
- 0.0.0.0/0
45+
- ::/0
46+
kubernetesVersion: v1.36.0
47+
networkCIDR: 10.0.0.0/16
48+
networking:
49+
cni: {}
50+
nonMasqueradeCIDR: 100.64.0.0/10
51+
sshAccess:
52+
- 0.0.0.0/0
53+
- ::/0
54+
subnets:
55+
- cidr: 10.0.0.0/16
56+
name: gossip.k8s.local
57+
region: eastus
58+
type: Public
59+
topology:
60+
dns:
61+
type: Private
62+
63+
---
64+
65+
apiVersion: kops.k8s.io/v1alpha2
66+
kind: InstanceGroup
67+
metadata:
68+
creationTimestamp: "2017-01-01T00:00:00Z"
69+
labels:
70+
kops.k8s.io/cluster: gossip.k8s.local
71+
name: control-plane-eastus-1
72+
spec:
73+
image: Canonical:ubuntu-24_04-lts:server:24.04.202606060
74+
machineType: Standard_B2s
75+
maxSize: 1
76+
minSize: 1
77+
nodeLabels:
78+
kops.k8s.io/instancegroup: control-plane-eastus-1
79+
role: Master
80+
subnets:
81+
- gossip.k8s.local
82+
zones:
83+
- eastus-1
84+
85+
---
86+
87+
apiVersion: kops.k8s.io/v1alpha2
88+
kind: InstanceGroup
89+
metadata:
90+
creationTimestamp: "2017-01-01T00:00:00Z"
91+
labels:
92+
kops.k8s.io/cluster: gossip.k8s.local
93+
name: nodes-eastus-1
94+
spec:
95+
image: Canonical:ubuntu-24_04-lts:server:24.04.202606060
96+
machineType: Standard_B2s
97+
maxSize: 1
98+
minSize: 1
99+
nodeLabels:
100+
kops.k8s.io/instancegroup: nodes-eastus-1
101+
role: Node
102+
subnets:
103+
- gossip.k8s.local
104+
zones:
105+
- eastus-1
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
ClusterName: gossip.k8s.local
2+
Zones:
3+
- eastus-1
4+
CloudProvider: azure
5+
Networking: cni
6+
KubernetesVersion: v1.36.0
7+
DNSType: Private
8+
Sets:
9+
- spec.cloudProvider.azure.storageAccountID=/subscriptions/sub-321/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/teststorage
10+
- spec.cloudProvider.azure.subscriptionID=sub-123
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
apiVersion: kops.k8s.io/v1alpha2
2+
kind: Cluster
3+
metadata:
4+
creationTimestamp: "2017-01-01T00:00:00Z"
5+
name: gossip.k8s.local
6+
spec:
7+
api:
8+
loadBalancer:
9+
type: Public
10+
authorization:
11+
rbac: {}
12+
channel: stable
13+
cloudConfig: {}
14+
cloudProvider: gce
15+
configBase: memfs://tests/gossip.k8s.local
16+
etcdClusters:
17+
- cpuRequest: 200m
18+
etcdMembers:
19+
- instanceGroup: control-plane-us-test1-a
20+
name: a
21+
manager:
22+
backupRetentionDays: 90
23+
memoryRequest: 100Mi
24+
name: main
25+
- cpuRequest: 100m
26+
etcdMembers:
27+
- instanceGroup: control-plane-us-test1-a
28+
name: a
29+
manager:
30+
backupRetentionDays: 90
31+
memoryRequest: 100Mi
32+
name: events
33+
iam:
34+
allowContainerRegistry: true
35+
legacy: false
36+
kubelet:
37+
anonymousAuth: false
38+
kubernetesApiAccess:
39+
- 0.0.0.0/0
40+
- ::/0
41+
kubernetesVersion: v1.36.0
42+
networking:
43+
cni: {}
44+
nonMasqueradeCIDR: 100.64.0.0/10
45+
project: testproject
46+
sshAccess:
47+
- 0.0.0.0/0
48+
- ::/0
49+
subnets:
50+
- cidr: 10.0.16.0/20
51+
name: us-test1
52+
region: us-test1
53+
type: Public
54+
topology:
55+
dns:
56+
type: Private
57+
58+
---
59+
60+
apiVersion: kops.k8s.io/v1alpha2
61+
kind: InstanceGroup
62+
metadata:
63+
creationTimestamp: "2017-01-01T00:00:00Z"
64+
labels:
65+
kops.k8s.io/cluster: gossip.k8s.local
66+
name: control-plane-us-test1-a
67+
spec:
68+
image: ubuntu-os-cloud/ubuntu-2404-noble-amd64-v20260615
69+
machineType: e2-medium
70+
maxSize: 1
71+
minSize: 1
72+
nodeLabels:
73+
kops.k8s.io/instancegroup: control-plane-us-test1-a
74+
role: Master
75+
subnets:
76+
- us-test1
77+
zones:
78+
- us-test1-a
79+
80+
---
81+
82+
apiVersion: kops.k8s.io/v1alpha2
83+
kind: InstanceGroup
84+
metadata:
85+
creationTimestamp: "2017-01-01T00:00:00Z"
86+
labels:
87+
kops.k8s.io/cluster: gossip.k8s.local
88+
name: nodes-us-test1-a
89+
spec:
90+
image: ubuntu-os-cloud/ubuntu-2404-noble-amd64-v20260615
91+
machineType: e2-medium
92+
maxSize: 1
93+
minSize: 1
94+
nodeLabels:
95+
kops.k8s.io/instancegroup: nodes-us-test1-a
96+
role: Node
97+
subnets:
98+
- us-test1
99+
zones:
100+
- us-test1-a
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
ClusterName: gossip.k8s.local
2+
Zones:
3+
- us-test1-a
4+
CloudProvider: gce
5+
Networking: cni
6+
KubernetesVersion: v1.36.0
7+
DNSType: Private
8+
Project: testproject

0 commit comments

Comments
 (0)