Skip to content

Commit 4341c74

Browse files
lzhechengshysank
authored andcommitted
Check configmap existence before creation
Signed-off-by: Zhecheng Li <[email protected]>
1 parent 7d5e541 commit 4341c74

File tree

2 files changed

+28
-4
lines changed

2 files changed

+28
-4
lines changed

Makefile

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -268,10 +268,7 @@ create-management-cluster: $(KUSTOMIZE) $(ENVSUBST) ## Create a management clust
268268
kubectl wait --for=condition=Available --timeout=5m -n capi-kubeadm-control-plane-system deployment -l cluster.x-k8s.io/provider=control-plane-kubeadm
269269

270270
# apply CNI ClusterResourceSets
271-
kubectl create configmap calico-addon --from-file=templates/addons/calico.yaml
272-
kubectl create configmap calico-ipv6-addon --from-file=templates/addons/calico-ipv6.yaml
273-
kubectl create configmap calico-dual-stack-addon --from-file=templates/addons/calico-dual-stack.yaml
274-
kubectl create configmap calico-windows-addon --from-file=templates/addons/windows/calico
271+
source ./scripts/ci-configmap.sh
275272

276273
kubectl apply -f templates/addons/calico-resource-set.yaml
277274

scripts/ci-configmap.sh

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#!/bin/bash
2+
3+
# Copyright 2022 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+
set -o errexit
18+
set -o nounset
19+
set -o pipefail
20+
21+
REPO_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
22+
23+
CM_NAMES=("calico-addon" "calico-ipv6-addon" "calico-dual-stack-addon" "calico-windows-addon")
24+
CM_FILES=("calico.yaml" "calico-ipv6.yaml" "calico-dual-stack.yaml" "windows/calico")
25+
for i in "${!CM_NAMES[@]}"; do
26+
kubectl create configmap "${CM_NAMES[i]}" --from-file="${REPO_ROOT}/templates/addons/${CM_FILES[i]}" --dry-run -o yaml | kubectl apply -f -
27+
done

0 commit comments

Comments
 (0)