#!/bin/sh set -eu expected_context=kubernetes-admin@kubernetes current_context=$(kubectl config current-context) if [ "${current_context}" != "${expected_context}" ]; then echo "Refusing to bootstrap through unexpected context: ${current_context}" >&2 exit 1 fi script_dir=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) kubectl apply --dry-run=server -k "${script_dir}" kubectl apply -k "${script_dir}" kubectl --namespace argocd wait application/immich-sync \ --for=jsonpath='{.status.sync.status}'=Synced \ --timeout=5m kubectl --namespace argocd wait application/immich-sync \ --for=jsonpath='{.status.health.status}'=Healthy \ --timeout=5m kubectl --namespace argocd wait application/sealed-secrets \ --for=jsonpath='{.status.sync.status}'=Synced \ --timeout=5m kubectl --namespace argocd wait application/sealed-secrets \ --for=jsonpath='{.status.health.status}'=Healthy \ --timeout=5m kubectl --namespace argocd wait application/immichframe \ --for=jsonpath='{.status.sync.status}'=Synced \ --timeout=5m kubectl --namespace argocd wait application/immichframe \ --for=jsonpath='{.status.health.status}'=Healthy \ --timeout=5m kubectl --namespace argocd wait application/metallb \ --for=jsonpath='{.status.sync.status}'=Synced \ --timeout=5m kubectl --namespace argocd wait application/metallb \ --for=jsonpath='{.status.health.status}'=Healthy \ --timeout=5m kubectl --namespace argocd wait application/argocd \ --for=jsonpath='{.status.sync.status}'=Synced \ --timeout=10m kubectl --namespace argocd wait application/argocd \ --for=jsonpath='{.status.health.status}'=Healthy \ --timeout=10m for application in \ brgkepler-com \ gschissenes-equipment \ immich-crack \ pfostendynamics-com \ watschn-studio do kubectl --namespace argocd wait "application/${application}" \ --for=jsonpath='{.status.sync.status}'=Synced \ --timeout=5m kubectl --namespace argocd wait "application/${application}" \ --for=jsonpath='{.status.health.status}'=Healthy \ --timeout=5m done