diff --git a/modules/k8s/local/create-ns.sh b/modules/k8s/local/create-ns.sh index 9e0b65c9ca..2cd08c55c2 100755 --- a/modules/k8s/local/create-ns.sh +++ b/modules/k8s/local/create-ns.sh @@ -2,12 +2,12 @@ K3D_CLUSTER_NAME=${K3D_CLUSTER_NAME:-"local"} -if [ "$(k3d cluster list | grep -o -E "^${K3D_CLUSTER_NAME}")" ]; then +if k3d cluster list | grep -q -o -E "^${K3D_CLUSTER_NAME}"; then set +e - namespaces=$(tk env list --json | jq -r '.[].spec.namespace' | sort | uniq) + namespaces="$(find rendered -type f -path '*/manifests/*.yaml' -print0 | xargs -0 -P1 yq eval-all --output-format csv '[.metadata.namespace] | map(select(. != null))' | tr ',' '\n' | sort -u)" while IFS= read -r namespace; do echo "Creating namespace $namespace ....." - out=$(kubectl --context k3d-${K3D_CLUSTER_NAME} create namespace $namespace 2>&1) + out=$(kubectl --context "k3d-${K3D_CLUSTER_NAME}" create namespace "$namespace" 2>&1) if [[ "$out" == *"AlreadyExists"* ]]; then echo "Namespace $namespace already exists, skipping" else