Skip to content

Commit 8e8d359

Browse files
authored
Merge pull request #1514 from ching-kuo/deprecate_intree
⚠️ Deprecate In-tree Cloud Provider
2 parents 19ec23c + b9ce07d commit 8e8d359

22 files changed

+110
-247
lines changed

Makefile

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,6 @@ e2e-templates: $(addprefix $(E2E_TEMPLATES_DIR)/, \
157157
cluster-template-v1alpha6.yaml \
158158
cluster-template-md-remediation.yaml \
159159
cluster-template-kcp-remediation.yaml \
160-
cluster-template-external-cloud-provider.yaml \
161160
cluster-template-multi-az.yaml \
162161
cluster-template-multi-network.yaml \
163162
cluster-template-without-lb.yaml \
@@ -425,7 +424,6 @@ release-notes: $(RELEASE_NOTES) ## Generate release notes
425424
templates: ## Generate cluster templates
426425
templates: templates/cluster-template.yaml \
427426
templates/cluster-template-without-lb.yaml \
428-
templates/cluster-template-external-cloud-provider.yaml \
429427
templates/cluster-template-flatcar.yaml \
430428
templates/cluster-template-external-cloud-provider-flatcar.yaml \
431429

RELEASE.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ It is recommended to create at least one release candidate when bumping `X` or `
7171
1. Attach the following files to the draft release:
7272
- `./out/infrastructure-components.yaml`
7373
- `./out/cluster-template.yaml`
74-
- `./out/cluster-template-external-cloud-provider.yaml`
7574
- `./out/cluster-template-without-lb.yaml`
7675
- `./out/metadata.yaml`
7776
1. Ensure that the release image has been promoted.

docs/book/src/clusteropenstack/configuration.md

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -46,17 +46,9 @@ This command actually uses [the template file](https://github.com/kubernetes-sig
4646

4747
Note: You can use [the template file](https://github.com/kubernetes-sigs/cluster-api-provider-openstack/blob/main/templates/cluster-template.yaml) by manually replacing values.
4848

49-
**Note:** By default the command creates highly available control plane with internal OpenStack cloud provider. If you wish to create highly available control plane with external OpenStack cloud provider or single control plane without load balancer, use external-cloud-provider or without-lb [flavor](https://cluster-api.sigs.k8s.io/clusterctl/commands/config-cluster.html#flavors) respectively. For example,
49+
**Note:** By default the command creates highly available control plane with 3 control plane nodes. If you wish to create single control plane without load balancer, use without-lb flavor. For example,
5050

5151
```bash
52-
# Using 'external-cloud-provider' flavor
53-
clusterctl generate cluster capi-quickstart \
54-
--flavor external-cloud-provider \
55-
--kubernetes-version v1.24.2 \
56-
--control-plane-machine-count=3 \
57-
--worker-machine-count=1 \
58-
> capi-quickstart.yaml
59-
6052
# Using 'without-lb' flavor
6153
clusterctl generate cluster capi-quickstart \
6254
--flavor without-lb \

kustomize/v1alpha7/default/cluster-template.yaml

Lines changed: 7 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -50,48 +50,20 @@ spec:
5050
nodeRegistration:
5151
name: '{{ local_hostname }}'
5252
kubeletExtraArgs:
53-
cloud-provider: openstack
54-
cloud-config: /etc/kubernetes/cloud.conf
53+
cloud-provider: external
5554
clusterConfiguration:
5655
apiServer:
5756
extraArgs:
58-
cloud-provider: openstack
59-
cloud-config: /etc/kubernetes/cloud.conf
60-
extraVolumes:
61-
- name: cloud
62-
hostPath: /etc/kubernetes/cloud.conf
63-
mountPath: /etc/kubernetes/cloud.conf
64-
readOnly: true
57+
cloud-provider: external
6558
controllerManager:
6659
extraArgs:
67-
cloud-provider: openstack
68-
cloud-config: /etc/kubernetes/cloud.conf
69-
extraVolumes:
70-
- name: cloud
71-
hostPath: /etc/kubernetes/cloud.conf
72-
mountPath: /etc/kubernetes/cloud.conf
73-
readOnly: true
74-
- name: cacerts
75-
hostPath: /etc/certs/cacert
76-
mountPath: /etc/certs/cacert
77-
readOnly: true
60+
cloud-provider: external
7861
joinConfiguration:
7962
nodeRegistration:
8063
name: '{{ local_hostname }}'
8164
kubeletExtraArgs:
82-
cloud-config: /etc/kubernetes/cloud.conf
83-
cloud-provider: openstack
84-
files:
85-
- path: /etc/kubernetes/cloud.conf
86-
owner: root
87-
permissions: "0600"
88-
content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
89-
encoding: base64
90-
- path: /etc/certs/cacert
91-
owner: root
92-
permissions: "0600"
93-
content: ${OPENSTACK_CLOUD_CACERT_B64}
94-
encoding: base64
65+
cloud-provider: external
66+
files: []
9567
version: "${KUBERNETES_VERSION}"
9668
---
9769
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha7
@@ -155,23 +127,12 @@ metadata:
155127
spec:
156128
template:
157129
spec:
158-
files:
159-
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
160-
encoding: base64
161-
owner: root
162-
path: /etc/kubernetes/cloud.conf
163-
permissions: "0600"
164-
- content: ${OPENSTACK_CLOUD_CACERT_B64}
165-
encoding: base64
166-
owner: root
167-
path: /etc/certs/cacert
168-
permissions: "0600"
130+
files: []
169131
joinConfiguration:
170132
nodeRegistration:
171133
name: '{{ local_hostname }}'
172134
kubeletExtraArgs:
173-
cloud-config: /etc/kubernetes/cloud.conf
174-
cloud-provider: openstack
135+
cloud-provider: external
175136
---
176137
apiVersion: v1
177138
kind: Secret

templates/cluster-template-external-cloud-provider.yaml renamed to templates/cluster-template-intree-cloud-provider.yaml

Lines changed: 46 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,22 @@ metadata:
1515
spec:
1616
template:
1717
spec:
18-
files: []
18+
files:
19+
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
20+
encoding: base64
21+
owner: root
22+
path: /etc/kubernetes/cloud.conf
23+
permissions: "0600"
24+
- content: ${OPENSTACK_CLOUD_CACERT_B64}
25+
encoding: base64
26+
owner: root
27+
path: /etc/certs/cacert
28+
permissions: "0600"
1929
joinConfiguration:
2030
nodeRegistration:
2131
kubeletExtraArgs:
22-
cloud-provider: external
32+
cloud-config: /etc/kubernetes/cloud.conf
33+
cloud-provider: openstack
2334
name: '{{ local_hostname }}'
2435
---
2536
apiVersion: cluster.x-k8s.io/v1beta1
@@ -74,20 +85,48 @@ spec:
7485
clusterConfiguration:
7586
apiServer:
7687
extraArgs:
77-
cloud-provider: external
88+
cloud-config: /etc/kubernetes/cloud.conf
89+
cloud-provider: openstack
90+
extraVolumes:
91+
- hostPath: /etc/kubernetes/cloud.conf
92+
mountPath: /etc/kubernetes/cloud.conf
93+
name: cloud
94+
readOnly: true
7895
controllerManager:
7996
extraArgs:
80-
cloud-provider: external
81-
files: []
97+
cloud-config: /etc/kubernetes/cloud.conf
98+
cloud-provider: openstack
99+
extraVolumes:
100+
- hostPath: /etc/kubernetes/cloud.conf
101+
mountPath: /etc/kubernetes/cloud.conf
102+
name: cloud
103+
readOnly: true
104+
- hostPath: /etc/certs/cacert
105+
mountPath: /etc/certs/cacert
106+
name: cacerts
107+
readOnly: true
108+
files:
109+
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
110+
encoding: base64
111+
owner: root
112+
path: /etc/kubernetes/cloud.conf
113+
permissions: "0600"
114+
- content: ${OPENSTACK_CLOUD_CACERT_B64}
115+
encoding: base64
116+
owner: root
117+
path: /etc/certs/cacert
118+
permissions: "0600"
82119
initConfiguration:
83120
nodeRegistration:
84121
kubeletExtraArgs:
85-
cloud-provider: external
122+
cloud-config: /etc/kubernetes/cloud.conf
123+
cloud-provider: openstack
86124
name: '{{ local_hostname }}'
87125
joinConfiguration:
88126
nodeRegistration:
89127
kubeletExtraArgs:
90-
cloud-provider: external
128+
cloud-config: /etc/kubernetes/cloud.conf
129+
cloud-provider: openstack
91130
name: '{{ local_hostname }}'
92131
machineTemplate:
93132
infrastructureRef:

templates/cluster-template-without-lb.yaml

Lines changed: 7 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,11 @@ metadata:
1515
spec:
1616
template:
1717
spec:
18-
files:
19-
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
20-
encoding: base64
21-
owner: root
22-
path: /etc/kubernetes/cloud.conf
23-
permissions: "0600"
24-
- content: ${OPENSTACK_CLOUD_CACERT_B64}
25-
encoding: base64
26-
owner: root
27-
path: /etc/certs/cacert
28-
permissions: "0600"
18+
files: []
2919
joinConfiguration:
3020
nodeRegistration:
3121
kubeletExtraArgs:
32-
cloud-config: /etc/kubernetes/cloud.conf
33-
cloud-provider: openstack
22+
cloud-provider: external
3423
name: '{{ local_hostname }}'
3524
---
3625
apiVersion: cluster.x-k8s.io/v1beta1
@@ -85,48 +74,20 @@ spec:
8574
clusterConfiguration:
8675
apiServer:
8776
extraArgs:
88-
cloud-config: /etc/kubernetes/cloud.conf
89-
cloud-provider: openstack
90-
extraVolumes:
91-
- hostPath: /etc/kubernetes/cloud.conf
92-
mountPath: /etc/kubernetes/cloud.conf
93-
name: cloud
94-
readOnly: true
77+
cloud-provider: external
9578
controllerManager:
9679
extraArgs:
97-
cloud-config: /etc/kubernetes/cloud.conf
98-
cloud-provider: openstack
99-
extraVolumes:
100-
- hostPath: /etc/kubernetes/cloud.conf
101-
mountPath: /etc/kubernetes/cloud.conf
102-
name: cloud
103-
readOnly: true
104-
- hostPath: /etc/certs/cacert
105-
mountPath: /etc/certs/cacert
106-
name: cacerts
107-
readOnly: true
108-
files:
109-
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
110-
encoding: base64
111-
owner: root
112-
path: /etc/kubernetes/cloud.conf
113-
permissions: "0600"
114-
- content: ${OPENSTACK_CLOUD_CACERT_B64}
115-
encoding: base64
116-
owner: root
117-
path: /etc/certs/cacert
118-
permissions: "0600"
80+
cloud-provider: external
81+
files: []
11982
initConfiguration:
12083
nodeRegistration:
12184
kubeletExtraArgs:
122-
cloud-config: /etc/kubernetes/cloud.conf
123-
cloud-provider: openstack
85+
cloud-provider: external
12486
name: '{{ local_hostname }}'
12587
joinConfiguration:
12688
nodeRegistration:
12789
kubeletExtraArgs:
128-
cloud-config: /etc/kubernetes/cloud.conf
129-
cloud-provider: openstack
90+
cloud-provider: external
13091
name: '{{ local_hostname }}'
13192
machineTemplate:
13293
infrastructureRef:

templates/cluster-template.yaml

Lines changed: 7 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,11 @@ metadata:
1515
spec:
1616
template:
1717
spec:
18-
files:
19-
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
20-
encoding: base64
21-
owner: root
22-
path: /etc/kubernetes/cloud.conf
23-
permissions: "0600"
24-
- content: ${OPENSTACK_CLOUD_CACERT_B64}
25-
encoding: base64
26-
owner: root
27-
path: /etc/certs/cacert
28-
permissions: "0600"
18+
files: []
2919
joinConfiguration:
3020
nodeRegistration:
3121
kubeletExtraArgs:
32-
cloud-config: /etc/kubernetes/cloud.conf
33-
cloud-provider: openstack
22+
cloud-provider: external
3423
name: '{{ local_hostname }}'
3524
---
3625
apiVersion: cluster.x-k8s.io/v1beta1
@@ -85,48 +74,20 @@ spec:
8574
clusterConfiguration:
8675
apiServer:
8776
extraArgs:
88-
cloud-config: /etc/kubernetes/cloud.conf
89-
cloud-provider: openstack
90-
extraVolumes:
91-
- hostPath: /etc/kubernetes/cloud.conf
92-
mountPath: /etc/kubernetes/cloud.conf
93-
name: cloud
94-
readOnly: true
77+
cloud-provider: external
9578
controllerManager:
9679
extraArgs:
97-
cloud-config: /etc/kubernetes/cloud.conf
98-
cloud-provider: openstack
99-
extraVolumes:
100-
- hostPath: /etc/kubernetes/cloud.conf
101-
mountPath: /etc/kubernetes/cloud.conf
102-
name: cloud
103-
readOnly: true
104-
- hostPath: /etc/certs/cacert
105-
mountPath: /etc/certs/cacert
106-
name: cacerts
107-
readOnly: true
108-
files:
109-
- content: ${OPENSTACK_CLOUD_PROVIDER_CONF_B64}
110-
encoding: base64
111-
owner: root
112-
path: /etc/kubernetes/cloud.conf
113-
permissions: "0600"
114-
- content: ${OPENSTACK_CLOUD_CACERT_B64}
115-
encoding: base64
116-
owner: root
117-
path: /etc/certs/cacert
118-
permissions: "0600"
80+
cloud-provider: external
81+
files: []
11982
initConfiguration:
12083
nodeRegistration:
12184
kubeletExtraArgs:
122-
cloud-config: /etc/kubernetes/cloud.conf
123-
cloud-provider: openstack
85+
cloud-provider: external
12486
name: '{{ local_hostname }}'
12587
joinConfiguration:
12688
nodeRegistration:
12789
kubeletExtraArgs:
128-
cloud-config: /etc/kubernetes/cloud.conf
129-
cloud-provider: openstack
90+
cloud-provider: external
13091
name: '{{ local_hostname }}'
13192
machineTemplate:
13293
infrastructureRef:

test/e2e/data/e2e_conf.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,6 @@ providers:
111111
files:
112112
- sourcePath: "../data/shared/v1beta1_provider/metadata.yaml"
113113
- sourcePath: "./infrastructure-openstack/cluster-template.yaml"
114-
- sourcePath: "./infrastructure-openstack/cluster-template-external-cloud-provider.yaml"
115114
- sourcePath: "./infrastructure-openstack/cluster-template-without-lb.yaml"
116115
replacements:
117116
- old: gcr.io/k8s-staging-capi-openstack/capi-openstack-controller:dev

test/e2e/data/kustomize/external-cloud-provider/kustomization.yaml renamed to test/e2e/data/kustomize/common-patches/ccm/kustomization.yaml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
1+
# Modifications to release templates common to all e2e test scenarios
12
---
2-
resources:
3-
- ../../../../../kustomize/v1alpha7/external-cloud-provider
4-
- ccm.yaml
5-
6-
components:
7-
- ../common-patches/cni
8-
- ../common-patches/containerd
3+
apiVersion: kustomize.config.k8s.io/v1alpha1
4+
kind: Component
95

106
patchesStrategicMerge:
117
- patch-ccm.yaml
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
---
22
resources:
33
- ../../../../../kustomize/v1alpha7/default
4+
- ccm.yaml
45

56
components:
67
- ../common-patches/cni
78
- ../common-patches/containerd
89
- ../upgrade-patches
10+
- ../common-patches/ccm

0 commit comments

Comments
 (0)