chore: add gitea-cpu preflight script with env fallback
Some checks are pending
Check Python Version Consistency / Check Python Version (push) Waiting to run

This commit is contained in:
Chris Christiansen 2026-07-25 01:39:42 +00:00
parent 220f418f4c
commit 49f34b027c

68
scripts/preflight-gitea-cpu.sh Executable file
View File

@ -0,0 +1,68 @@
#!/usr/bin/env bash
set -euo pipefail
TARGET_PROJECT="propane-will-491900-m5"
REPO_ROOT="${REPO_ROOT:-$HOME/OSVauco}"
GITEA_SERVICE="${GITEA_SERVICE:-gitea}"
GREEN="\033[0;32m"
RED="\033[0;31m"
YELLOW="\033[1;33m"
NC="\033[0m"
check() {
local label="$1"
local cmd="$2"
echo -n "$label: "
if eval "$cmd" >/dev/null 2>&1; then
echo -e "${GREEN}OK${NC}"
else
echo -e "${RED}FAIL${NC}"
return 1
fi
}
warn() {
local label="$1"
local cmd="$2"
local msg="$3"
echo -n "$label: "
if eval "$cmd" >/dev/null 2>&1; then
echo -e "${GREEN}OK${NC}"
else
echo -e "${YELLOW}WARN${NC} - $msg"
fi
}
echo "=== PREFLIGHT: $(hostname) ==="
echo "User: $USER"
echo "Home: $HOME"
echo "Repo root: $REPO_ROOT"
echo "Target project:$TARGET_PROJECT"
echo "Gitea service: $GITEA_SERVICE"
echo
check "Repo exists" "[ -d \"$REPO_ROOT\" ]"
check "gcloud auth active" "gcloud auth list --filter=status:ACTIVE --format='value(account)' | grep -q ."
check "ADC token (metadata)" "gcloud auth application-default print-access-token >/dev/null 2>&1"
check "gcloud config project" "[ \"\$(gcloud config get-value project 2>/dev/null)\" = \"$TARGET_PROJECT\" ]"
check "Shell GOOGLE_CLOUD_PROJECT" "[ \"\${GOOGLE_CLOUD_PROJECT:-}\" = \"$TARGET_PROJECT\" ]"
warn "Systemd manager env" "systemctl show-environment | grep -q \"GOOGLE_CLOUD_PROJECT=$TARGET_PROJECT\"" "not in manager env (unit overrides may still work)"
if [ -f "$REPO_ROOT/.env" ]; then
echo -e "Env file: ${GREEN}OK${NC} - using .env"
elif [ -f "$REPO_ROOT/.env.prefilled" ]; then
echo -e "Env file: ${YELLOW}WARN${NC} - .env missing, but .env.prefilled exists"
elif [ -f "$REPO_ROOT/.env.example" ]; then
echo -e "Env file: ${YELLOW}WARN${NC} - only .env.example exists"
else
echo -e "Env file: ${RED}FAIL${NC} - no .env, .env.prefilled, or .env.example found"
exit 1
fi
warn "Git clean" "git -C \"$REPO_ROOT\" diff --quiet && git -C \"$REPO_ROOT\" diff --cached --quiet" "working tree has local changes"
check "Gitea service active" "systemctl is-active --quiet \"$GITEA_SERVICE\""
check "Gemini CLI in PATH" "command -v gemini >/dev/null 2>&1"
echo
echo "Preflight complete."