fix: boot.sh ASCII art — pure ASCII font that renders in all terminals

This commit is contained in:
chrischristiansen-glitch 2026-05-23 06:29:12 +02:00
parent 8ffd9c7dab
commit d0c0b6d89a

View File

@ -7,92 +7,82 @@
OSVAUCO_DIR="${HOME}/OSVauco"
# Only run in interactive shells
[[ $- != *i* ]] && return
[[ ! -d "$OSVAUCO_DIR" ]] && return
cd "$OSVAUCO_DIR" || return
# ──────────────────────────────────────────────────────────────────────────────
# Colors
CYAN='\033[0;36m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
BLUE='\033[0;34m'
MAGENTA='\033[0;35m'
WHITE='\033[1;37m'
DIM='\033[2m'
BOLD='\033[1m'
NC='\033[0m' # No Color
NC='\033[0m'
OK="${GREEN}${NC}"
WARN="${YELLOW}⚠️ ${NC}"
FAIL="${RED}${NC}"
INFO="${CYAN}${NC}"
DOT="${DIM}${NC}"
OK="${GREEN}[OK]${NC}"
WARN="${YELLOW}[!!]${NC}"
FAIL="${RED}[XX]${NC}"
INFO="${CYAN}[>>]${NC}"
DOT="${DIM}[--]${NC}"
clear
echo ""
printf "${CYAN}"
echo " ██████╗███████╗██╗ ██╗█████╗ ██████╗ ██████╗ "
echo " ╚════██║╚══════╝██║ ██║██╔══██╗██╔════╝██╔════╝ "
echo " █████╔╝ ███╗ ██║ ██║██║ ██║██║ ███╗██║ "
echo " ██╔════╝ ██║ ██║ ██║██║ ██║██║ ██║██║ "
echo " ███████╗███████║╚██████╔╝╚█████╔╝╚██████╔╝╚██████╗"
echo " ╚══════╝╚══════╝ ╚═════╝ ╚════╝ ╚═════╝ ╚═════╝"
echo " ___ ____ _ _ _ _ _ _ ___ ___"
echo " / _ \/ ___| | | | | / \ | || | | |/ __|| _|"
echo "| | | \___ \ | |_| |/ _ \| || |_| | | | |_"
echo "| |_| |___) | | _ / ___ \ || _ | |__ | _|"
echo " \___/|____/ |_| |_/_/ \_\_||_| |_|\___||_|"
printf "${NC}"
printf "${DIM} O P A X O p e r a t o r P l a t f o r m${NC}\n"
printf "${DIM} v2 • propane-will-491900-m5 • us-central1${NC}\n"
echo ""
printf "${DIM}════════════════════════════════════════════════════════════════════${NC}\n"
BOOT_TIME=$(date '+%Y-%m-%d %H:%M %Z')
printf " ${DIM}BOOT${NC} ${WHITE}%s${NC}\n" "$BOOT_TIME"
printf "${DIM} O P A X // Operator Platform // propane-will-491900-m5${NC}\n"
printf "${DIM} -------------------------------------------------------${NC}\n"
printf " ${WHITE}BOOT${NC} ${DIM}$(date '+%Y-%m-%d %H:%M %Z')${NC}\n"
printf "${DIM} -------------------------------------------------------${NC}\n"
echo ""
# =============================================================================
# SECTION 1: ENV + AUTH
# SECTION 1: AUTH
# =============================================================================
printf " ${BOLD}${BLUE}► AUTH${NC}\n"
printf "${BOLD}${BLUE} [ AUTH ]${NC}\n"
# Load .env
if [[ -f "$OSVAUCO_DIR/.env" ]]; then
source "$OSVAUCO_DIR/.env"
printf " ${OK} .env loaded ${DIM}PROJECT_ID=${PROJECT_ID}${NC}\n"
else
printf " ${FAIL} .env MISSING ${YELLOW}Run: cp .env.example .env && nano .env${NC}\n"
printf " ${FAIL} .env MISSING ${YELLOW}Run: cp .env.example .env${NC}\n"
return
fi
# gcloud project
gcloud config set project "$PROJECT_ID" --quiet 2>/dev/null
ACTIVE_PROJ=$(gcloud config get-value project 2>/dev/null)
if [[ "$ACTIVE_PROJ" == "$PROJECT_ID" ]]; then
printf " ${OK} gcloud project ${DIM}${ACTIVE_PROJ}${NC}\n"
else
printf " ${FAIL} gcloud project MISMATCH: got ${ACTIVE_PROJ}, expected ${PROJECT_ID}\n"
printf " ${FAIL} project MISMATCH ${RED}got: ${ACTIVE_PROJ}${NC}\n"
fi
# Active account
ACTIVE_ACCOUNT=$(gcloud config get-value account 2>/dev/null)
if [[ -n "$ACTIVE_ACCOUNT" ]]; then
printf " ${OK} gcloud account ${DIM}${ACTIVE_ACCOUNT}${NC}\n"
else
printf " ${FAIL} gcloud account MISSING${NC} ${YELLOW}Run: gcloud auth login${NC}\n"
printf " ${FAIL} NO ACCOUNT ${YELLOW}Run: gcloud auth login${NC}\n"
fi
# Application Default Credentials
if gcloud auth application-default print-access-token >/dev/null 2>&1; then
printf " ${OK} ADC (app-default) ${DIM}valid${NC}\n"
printf " ${OK} ADC token ${DIM}valid${NC}\n"
else
printf " ${WARN} ADC missing ${YELLOW}Run: gcloud auth application-default login${NC}\n"
fi
echo ""
# =============================================================================
# SECTION 2: CLOUD RUN SERVICES
# SECTION 2: CLOUD RUN
# =============================================================================
printf " ${BOLD}${BLUE}► CLOUD RUN${NC}\n"
printf "${BOLD}${BLUE} [ CLOUD RUN ]${NC}\n"
CR_LIST=$(gcloud run services list \
--project="${PROJECT_ID}" \
--region="${REGION}" \
@ -102,15 +92,15 @@ if [[ -z "$CR_LIST" ]]; then
printf " ${DOT} No services deployed ${DIM}(no cost)${NC}\n"
else
while IFS=$'\t' read -r NAME URL; do
printf " ${OK} %-28s ${DIM}%s${NC}\n" "$NAME" "$URL"
printf " ${OK} %-26s ${DIM}%s${NC}\n" "$NAME" "$URL"
done <<< "$CR_LIST"
fi
echo ""
# =============================================================================
# SECTION 3: MEMORY BANK / REASONING ENGINES
# SECTION 3: MEMORY BANK
# =============================================================================
printf " ${BOLD}${BLUE}► MEMORY BANK${NC} ${DIM}(\$0.0994/vCPU-hr • continuous billing)${NC}\n"
printf "${BOLD}${BLUE} [ MEMORY BANK ]${NC} ${DIM}(\$0.0994/vCPU-hr -- continuous billing)${NC}\n"
ENGINES=$(gcloud ai reasoning-engines list \
--project="${PROJECT_ID}" \
--region="${REGION}" \
@ -120,19 +110,19 @@ if [[ -z "$ENGINES" ]]; then
printf " ${OK} No active instances ${DIM}(no cost)${NC}\n"
else
ENGINE_COUNT=$(echo "$ENGINES" | grep -c . || true)
printf " ${RED}${BOLD}⚠️ $ENGINE_COUNT INSTANCE(S) RUNNING — COSTS MONEY CONTINUOUSLY${NC}\n"
printf " ${FAIL} ${RED}${BOLD}${ENGINE_COUNT} INSTANCE(S) RUNNING -- COSTS MONEY CONTINUOUSLY${NC}\n"
while IFS=$'\t' read -r ENAME EDISPLAY; do
SHORT=$(echo "$ENAME" | awk -F'/' '{print $NF}')
printf " ${WARN} %-20s ${DIM}%s${NC}\n" "${EDISPLAY:-unnamed}" "id:$SHORT"
printf " ${WARN} %-22s ${DIM}id: %s${NC}\n" "${EDISPLAY:-unnamed}" "$SHORT"
done <<< "$ENGINES"
printf " ${INFO} To delete: ${DIM}gcloud ai reasoning-engines delete ID --project=$PROJECT_ID --region=$REGION --quiet${NC}\n"
printf " ${INFO} ${DIM}gcloud ai reasoning-engines delete ID --project=$PROJECT_ID --region=$REGION --quiet${NC}\n"
fi
echo ""
# =============================================================================
# SECTION 4: VERTEX AI AGENTS (ADK Agent Runtimes)
# SECTION 4: AGENT RUNTIMES
# =============================================================================
printf " ${BOLD}${BLUE}► AGENT RUNTIMES${NC}\n"
printf "${BOLD}${BLUE} [ AGENT RUNTIMES ]${NC}\n"
AGENT_RUNTIMES=$(gcloud ai agent-engines list \
--project="${PROJECT_ID}" \
--region="${REGION}" \
@ -144,9 +134,9 @@ else
while IFS=$'\t' read -r ANAME ADISPLAY ASTATE; do
SHORT=$(echo "$ANAME" | awk -F'/' '{print $NF}')
if [[ "$ASTATE" == "ACTIVE" ]]; then
printf " ${OK} %-24s ${GREEN}%-8s${NC} ${DIM}id:$SHORT${NC}\n" "${ADISPLAY:-unnamed}" "$ASTATE"
printf " ${OK} %-24s ${GREEN}%-8s${NC} ${DIM}id: %s${NC}\n" "${ADISPLAY:-unnamed}" "$ASTATE" "$SHORT"
else
printf " ${WARN} %-24s ${YELLOW}%-8s${NC} ${DIM}id:$SHORT${NC}\n" "${ADISPLAY:-unnamed}" "$ASTATE"
printf " ${WARN} %-24s ${YELLOW}%-8s${NC} ${DIM}id: %s${NC}\n" "${ADISPLAY:-unnamed}" "$ASTATE" "$SHORT"
fi
done <<< "$AGENT_RUNTIMES"
fi
@ -155,7 +145,7 @@ echo ""
# =============================================================================
# SECTION 5: RAG CORPORA
# =============================================================================
printf " ${BOLD}${BLUE}► RAG CORPORA${NC} ${DIM}(not deleted by teardown)${NC}\n"
printf "${BOLD}${BLUE} [ RAG CORPORA ]${NC} ${DIM}(not deleted by teardown)${NC}\n"
RAG_LIST=$(gcloud ai rag-corpora list \
--project="${PROJECT_ID}" \
--region="${REGION}" \
@ -166,32 +156,32 @@ if [[ -z "$RAG_LIST" ]]; then
else
while IFS=$'\t' read -r RNAME RDISPLAY; do
SHORT=$(echo "$RNAME" | awk -F'/' '{print $NF}')
printf " ${OK} %-28s ${DIM}id:$SHORT${NC}\n" "${RDISPLAY:-unnamed}"
printf " ${OK} %-28s ${DIM}id: %s${NC}\n" "${RDISPLAY:-unnamed}" "$SHORT"
done <<< "$RAG_LIST"
fi
echo ""
# =============================================================================
# SECTION 6: GIT SYNC
# SECTION 6: GIT
# =============================================================================
printf " ${BOLD}${BLUE}► GIT${NC}\n"
printf "${BOLD}${BLUE} [ GIT ]${NC}\n"
git pull --quiet 2>/dev/null
GIT_BRANCH=$(git branch --show-current 2>/dev/null || echo "unknown")
GIT_STATUS=$(git pull --quiet 2>&1)
LAST_COMMIT=$(git log --oneline -1 2>/dev/null || echo "unknown")
printf " ${OK} Branch: ${WHITE}%-20s${NC} ${DIM}%s${NC}\n" "$GIT_BRANCH" "$LAST_COMMIT"
printf " ${OK} branch: ${WHITE}%-18s${NC} ${DIM}%s${NC}\n" "$GIT_BRANCH" "$LAST_COMMIT"
echo ""
# =============================================================================
# SECTION 7: QUICK COMMANDS
# QUICK COMMANDS
# =============================================================================
printf "${DIM}════════════════════════════════════════════════════════════════════${NC}\n"
printf " ${BOLD}${CYAN}QUICK COMMANDS${NC}\n"
printf " ${DIM}setup ${NC}bash infrastructure/00-authcheck.sh\n"
printf " ${DIM}deploy ${NC}bash infrastructure/05-cloudrun-deploy.sh\n"
printf " ${DIM}rag ${NC}bash infrastructure/07-rag-setup.sh\n"
printf " ${DIM}memory ${NC}bash infrastructure/08-memorybank-setup.sh\n"
printf " ${DIM}cost ${NC}bash infrastructure/09-cost-check.sh\n"
printf " ${DIM}teardown ${NC}bash infrastructure/03-teardown.sh\n"
printf " ${DIM}gemini ${NC}gemini ${DIM}(OPAX-MCP TUI)${NC}\n"
printf "${DIM}════════════════════════════════════════════════════════════════════${NC}\n"
printf "${DIM} -------------------------------------------------------${NC}\n"
printf "${BOLD}${CYAN} QUICK COMMANDS${NC}\n"
printf " ${DIM}authcheck ${NC} bash infrastructure/00-authcheck.sh\n"
printf " ${DIM}deploy ${NC} bash infrastructure/05-cloudrun-deploy.sh\n"
printf " ${DIM}rag ${NC} bash infrastructure/07-rag-setup.sh\n"
printf " ${DIM}memory ${NC} bash infrastructure/08-memorybank-setup.sh\n"
printf " ${DIM}cost ${NC} bash infrastructure/09-cost-check.sh\n"
printf " ${DIM}teardown ${NC} bash infrastructure/03-teardown.sh\n"
printf " ${DIM}gemini ${NC} gemini ${DIM}# OPAX-MCP TUI${NC}\n"
printf "${DIM} -------------------------------------------------------${NC}\n"
echo ""