77 lines
2.2 KiB
Bash
77 lines
2.2 KiB
Bash
#!/bin/sh
|
|
set -eu
|
|
|
|
SLOT="${1:-}"
|
|
if [ -z "$SLOT" ] || [ "$SLOT" = "--help" ] || [ "$SLOT" = "-h" ]; then
|
|
echo "Usage:"
|
|
echo " $0 blue # inspecte web_blue"
|
|
echo " $0 green # inspecte web_green"
|
|
exit 0
|
|
fi
|
|
|
|
case "$SLOT" in
|
|
blue) SERVICE="web_blue"; CNAME="archicratie-web-blue" ;;
|
|
green) SERVICE="web_green"; CNAME="archicratie-web-green" ;;
|
|
*) echo "Slot invalide: $SLOT (attendu: blue|green)"; exit 1 ;;
|
|
esac
|
|
|
|
ROOT="$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)"
|
|
cd "$ROOT"
|
|
|
|
echo "== .env (valeurs build) =="
|
|
if [ -f ".env" ]; then
|
|
cat .env
|
|
else
|
|
echo "(absent)"
|
|
fi
|
|
echo ""
|
|
|
|
# Récupère container id via compose si possible
|
|
CID="$(docker compose ps -q "$SERVICE" 2>/dev/null || true)"
|
|
if [ -n "$CID" ]; then
|
|
TARGET="$CID"
|
|
else
|
|
TARGET="$CNAME"
|
|
fi
|
|
|
|
echo "== Extraction dans le conteneur ($SLOT) =="
|
|
if ! docker inspect "$TARGET" >/dev/null 2>&1; then
|
|
echo "Conteneur introuvable: $TARGET"
|
|
echo "Astuce: docker compose up -d $SERVICE"
|
|
exit 1
|
|
fi
|
|
|
|
# Cherche la ligne JS injectée dans le HTML (format vu chez toi : const GITEA_BASE = "...")
|
|
docker exec -it "$TARGET" sh -lc '
|
|
set -eu
|
|
F="$(grep -Ril "const GITEA_BASE" /usr/share/nginx/html 2>/dev/null | head -n 1 || true)"
|
|
if [ -z "$F" ]; then
|
|
echo "ERREUR: impossible de trouver GITEA_BASE dans le HTML"
|
|
exit 2
|
|
fi
|
|
echo "Fichier exemple: $F"
|
|
LINE="$(grep -Rin "const GITEA_BASE" "$F" | head -n 1)"
|
|
echo "$LINE"
|
|
echo ""
|
|
echo "Snippet (GITEA_BASE/OWNER/REPO) :"
|
|
grep -Rin "const GITEA_BASE\|const GITEA_OWNER\|const GITEA_REPO" "$F" | head -n 20
|
|
' || true
|
|
|
|
echo ""
|
|
echo "== Tests HTTP (depuis le NAS) =="
|
|
# Parse .env proprement (sans source/bashex)
|
|
BASE="$(grep -E '^PUBLIC_GITEA_BASE=' .env 2>/dev/null | sed 's/^PUBLIC_GITEA_BASE=//' | tr -d '\r' || true)"
|
|
OWNER="$(grep -E '^PUBLIC_GITEA_OWNER=' .env 2>/dev/null | sed 's/^PUBLIC_GITEA_OWNER=//' | tr -d '\r' || true)"
|
|
REPO="$(grep -E '^PUBLIC_GITEA_REPO=' .env 2>/dev/null | sed 's/^PUBLIC_GITEA_REPO=//' | tr -d '\r' || true)"
|
|
|
|
if [ -z "$BASE" ] || [ -z "$OWNER" ] || [ -z "$REPO" ]; then
|
|
echo "WARN: .env incomplet (BASE/OWNER/REPO)."
|
|
exit 0
|
|
fi
|
|
|
|
echo "Repo: $BASE/$OWNER/$REPO/"
|
|
curl -kI "$BASE/$OWNER/$REPO/" | head -n 12 || true
|
|
echo ""
|
|
echo "Issue new: $BASE/$OWNER/$REPO/issues/new"
|
|
curl -kI "$BASE/$OWNER/$REPO/issues/new" | head -n 15 || true
|