ee5bd0a291
Document registry ingress split, image mirroring, loop OSD setup, and platform integration paths.
49 lines
1.7 KiB
Bash
Executable File
49 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Replaces registry.abrban.com docker distribution with Harbor.
|
|
# WARNING: This will delete the existing `Ingress/registry` routing. The old
|
|
# `Deployment/registry` and its PVC are left in place for rollback.
|
|
|
|
VALUES_FILE="${1:-/Users/keyhan/Documents/keyhan-project/cloud-host/backend/helm/cloudhost-harbor/values-registry.abrban.com.yaml}"
|
|
|
|
echo "==> Ensuring harbor repo"
|
|
helm repo add harbor https://helm.goharbor.io 2>/dev/null || true
|
|
helm repo update harbor
|
|
|
|
echo "==> [0/4] Preflight"
|
|
kubectl -n cloudhost get secret abrban-wildcard-tls >/dev/null
|
|
kubectl -n cloudhost get secret registry-egress-proxy >/dev/null
|
|
|
|
echo "==> [1/4] Disabling old registry ingress (host registry.abrban.com)"
|
|
kubectl -n cloudhost delete ingress registry --ignore-not-found
|
|
|
|
echo "==> [2/4] Scaling old registry deployment down (rollback-friendly)"
|
|
kubectl -n cloudhost scale deploy/registry --replicas=0 || true
|
|
|
|
echo "==> [3/4] Installing Harbor"
|
|
HTTP_PROXY="$(kubectl -n cloudhost get secret registry-egress-proxy -o jsonpath='{.data.HTTP_PROXY}' | base64 -d)"
|
|
HTTPS_PROXY="$(kubectl -n cloudhost get secret registry-egress-proxy -o jsonpath='{.data.HTTPS_PROXY}' | base64 -d)"
|
|
NO_PROXY="$(kubectl -n cloudhost get secret registry-egress-proxy -o jsonpath='{.data.NO_PROXY}' | base64 -d)"
|
|
|
|
TMP_PROXY_VALUES="$(mktemp)"
|
|
cat > "${TMP_PROXY_VALUES}" <<EOF
|
|
proxy:
|
|
httpProxy: "${HTTP_PROXY}"
|
|
httpsProxy: "${HTTPS_PROXY}"
|
|
noProxy: "${NO_PROXY}"
|
|
EOF
|
|
|
|
helm upgrade --install harbor harbor/harbor \
|
|
-n cloudhost \
|
|
-f "$VALUES_FILE" \
|
|
-f "${TMP_PROXY_VALUES}" \
|
|
--wait \
|
|
--timeout 20m
|
|
|
|
rm -f "${TMP_PROXY_VALUES}" || true
|
|
|
|
echo "==> [4/4] Done"
|
|
kubectl -n cloudhost get ingress | grep -n registry || true
|
|
|