Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
139 changes: 0 additions & 139 deletions deploy/docker-compose.spillquest.yml

This file was deleted.

21 changes: 0 additions & 21 deletions deploy/hostinger/.env.spillquest.example

This file was deleted.

2 changes: 1 addition & 1 deletion deploy/hostinger/cloudflare-config-post-cutover.yml
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,8 @@ ingress:
# agenticretailos.com, www — SEO concept page
# arosapp.com, arosapp.online — 301 → aros.live
# agenticretailos.online — 301 → agenticretailos.com
# spillquest.com — SpillQuest app
# nirtek.net, www.nirtek.net — legacy AROS SPA
# (spillquest.com now lives on its own dedicated VPS — not in this zone routing)
#
# Mac tunnel (above — depends on CortexDB/Ollama/agents):
# app.shre.ai — MIB007 platform UI
Expand Down
55 changes: 8 additions & 47 deletions deploy/hostinger/deploy-full.sh
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
#!/usr/bin/env bash
# Shre Production VPS — Full Stack Deployment
# Deploys: AROS (PM2) + Shre Core (Docker) + SpillQuest (Docker)
# Deploys: AROS (PM2) + Shre Core (Docker)
#
# Usage:
# ./deploy-full.sh # Deploy everything
# ./deploy-full.sh --aros-only # AROS only (PM2)
# ./deploy-full.sh --docker-only # Docker stacks only
# ./deploy-full.sh --spillquest-only # SpillQuest only
#
# Prereqs on VPS:
# - Docker + Docker Compose v2
# - Node 20+, pnpm, pm2 (for AROS)
# - nginx + certbot
# - /opt/shre/ directory structure
# - /opt/shre/envs/.env.shre-core and .env.spillquest
# - /opt/shre/envs/.env.shre-core
#
# NOTE: SpillQuest (spillquest.com) is a separate product deployed from its own
# repo (Nirpat3/find-myself) onto its own dedicated VPS — it is intentionally
# not managed here.

set -euo pipefail

Expand Down Expand Up @@ -42,7 +45,7 @@ preflight() {
fi

# Env files
for envfile in "$ENV_DIR/.env.shre-core" "$ENV_DIR/.env.spillquest"; do
for envfile in "$ENV_DIR/.env.shre-core"; do
if [ ! -f "$envfile" ]; then
echo "ERROR: Missing $envfile"
exit 1
Expand Down Expand Up @@ -105,43 +108,6 @@ deploy_shre_core() {
done
}

# ── SpillQuest (Docker Compose) ────────────────────────────────────────────

deploy_spillquest() {
echo ""
echo "── Deploying SpillQuest (Docker) ──"

cd "$COMPOSE_DIR"

# Export SpillQuest env vars for compose interpolation
set -a
source "$ENV_DIR/.env.spillquest"
set +a

# IMAGE_TAG defaults to "latest" — CI sets it to the git SHA
export IMAGE_TAG="${IMAGE_TAG:-latest}"
echo " Image tag: $IMAGE_TAG"

# Pull pre-built images from GHCR (no source builds on VPS)
docker compose -f docker-compose.spillquest.yml pull --quiet

# Rolling restart — nginx stays up while backends replace
docker compose -f docker-compose.spillquest.yml up -d \
--no-build \
--remove-orphans

echo "Waiting for SpillQuest..."
for i in $(seq 1 12); do
if curl -sf --max-time 5 http://localhost:4080/health >/dev/null 2>&1; then
echo " SpillQuest: OK (attempt $i)"
return 0
fi
sleep 5
done

echo " WARNING: SpillQuest health check did not pass within 60s"
}

# ── Nginx config sync ──────────────────────────────────────────────────────

sync_nginx() {
Expand All @@ -151,7 +117,7 @@ sync_nginx() {
NGINX_SRC="$COMPOSE_DIR/nginx"
NGINX_DST="/etc/nginx/sites-available"

for conf in aros spillquest nirtek; do
for conf in aros nirtek; do
if [ -f "$NGINX_SRC/$conf.conf" ]; then
cp "$NGINX_SRC/$conf.conf" "$NGINX_DST/$conf"
ln -sf "$NGINX_DST/$conf" "/etc/nginx/sites-enabled/$conf" 2>/dev/null || true
Expand All @@ -173,15 +139,10 @@ case "$MODE" in
;;
--docker-only)
deploy_shre_core
deploy_spillquest
;;
--spillquest-only)
deploy_spillquest
;;
all|*)
deploy_aros
deploy_shre_core
deploy_spillquest
sync_nginx
;;
esac
Expand Down
86 changes: 0 additions & 86 deletions deploy/hostinger/nginx-spillquest.conf

This file was deleted.

11 changes: 4 additions & 7 deletions deploy/hostinger/setup-vps-full.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
# Run as root: sudo bash setup-vps-full.sh
#
# Sets up: Docker + Docker Compose, Node 20, PM2, nginx, certbot,
# directory structure for AROS (PM2) + Shre Core (Docker) + SpillQuest (Docker)
# directory structure for AROS (PM2) + Shre Core (Docker)
#
# NOTE: SpillQuest (spillquest.com) is a separate product with its own repo
# (Nirpat3/find-myself) and its own dedicated VPS — not provisioned here.

set -euo pipefail

Expand Down Expand Up @@ -131,24 +134,18 @@ echo " cd /opt/shre-sdk && pnpm install && pnpm build"
echo ""
echo "2. Copy compose files:"
echo " cp /opt/aros-platform/deploy/docker-compose.aros-retail.yml /opt/shre/compose/"
echo " cp /opt/aros-platform/deploy/docker-compose.spillquest.yml /opt/shre/compose/"
echo ""
echo "3. Create env files from templates:"
echo " cp /opt/aros-platform/deploy/hostinger/.env.shre-core.example /opt/shre/envs/.env.shre-core"
echo " cp /opt/aros-platform/deploy/hostinger/.env.spillquest.example /opt/shre/envs/.env.spillquest"
echo " nano /opt/shre/envs/.env.shre-core # Fill in real values"
echo " nano /opt/shre/envs/.env.spillquest # Fill in real values"
echo " chmod 600 /opt/shre/envs/.env.*"
echo ""
echo "4. Copy nginx configs:"
echo " mkdir -p /opt/shre/compose/nginx"
echo " cp /opt/aros-platform/deploy/hostinger/nginx.conf /opt/shre/compose/nginx/aros.conf"
echo " cp /opt/aros-platform/deploy/hostinger/nginx-spillquest.conf /opt/shre/compose/nginx/spillquest.conf"
echo " cp /opt/aros-platform/deploy/hostinger/nginx-nirtek.conf /opt/shre/compose/nginx/nirtek.conf"
echo ""
echo "5. SSL certificates:"
echo " # SpillQuest (standard HTTP challenge)"
echo " certbot --nginx -d spillquest.com -d www.spillquest.com --non-interactive --agree-tos --email admin@nirtek.net"
echo " # AROS (already done if migrated earlier)"
echo " certbot --nginx -d aros.nirtek.net --non-interactive --agree-tos --email admin@nirtek.net"
echo " # nirtek.net wildcard (requires DNS challenge via Cloudflare)"
Expand Down
Loading