Files
local-k8s/setup
T
argoyle 81898ffe9c fix(setup): wait for specific cert-manager pods to be ready
Update the kubectl wait command to target specific pods in the 
cert-manager namespace using labels. This ensures that the setup 
process only proceeds once the necessary components (cert-manager, 
cainjector, and webhook) are ready, improving reliability and 
specificity in deployment readiness checks.
2025-06-29 14:13:43 +02:00

26 lines
1002 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
kind create cluster --config kind/kind.yaml --wait 10m
kubectl create secret docker-registry gitlab \
--docker-server=registry.gitlab.com \
--docker-username=gitlab \
--docker-password="${GITLAB_TOKEN}" \
--docker-email=gitlab@unbound.se
kubectl patch serviceaccount default -p '{"imagePullSecrets": [{"name": "gitlab"}]}'
kustomized="$(mktemp --suffix .unboundkind.yaml --tmpdir=/tmp/)"
kubectl kustomize --enable-helm ./kind > "${kustomized}"
kubectl apply -f "${kustomized}" || true
kubectl wait --for=condition=Ready pods -n cert-manager -l app=cert-manager --timeout 5m
kubectl wait --for=condition=Ready pods -n cert-manager -l app=cainjector --timeout 5m
kubectl wait --for=condition=Ready pods -n cert-manager -l app=webhook --timeout 5m
kubectl wait --for=condition=Ready pods --all -n external-secrets --timeout=5m
kubectl apply -f "${kustomized}"
kubectl wait --for=condition=Ready pods --all --timeout=5m