Files
homelab-config/status-monitor/deploy.sh
T

28 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Script de déploiement DevOps pour status-monitor
# Flux: IDE (Windows) -> WSL -> CT200/CT100 (bastion 192.168.0.100) -> CT201 (192.168.0.201)
# Utilisation: wsl bash ~/homelab-config/status-monitor/deploy.sh
set -e
WSL_REPO="$HOME/homelab-config"
IDE_REPO="/mnt/c/Users/theo/homelab_ia/homelab-config"
# Etape 1: Synchroniser IDE (Windows) -> WSL
if [ -d "$IDE_REPO" ] && [ -d "$WSL_REPO" ]; then
echo "[DEPLOY] Synchronisation IDE -> WSL..."
cp "$IDE_REPO/status-monitor/app.py" "$WSL_REPO/status-monitor/app.py"
sed -i 's/\r$//' "$WSL_REPO/status-monitor/app.py"
echo "[DEPLOY] OK - Source copied IDE -> WSL"
fi
# Etape 2: Deploiement WSL -> CT201 via CT200/CT100 (ProxyJump)
echo "[DEPLOY] Transfert WSL -> CT201 via CT200/CT100..."
scp -J root@192.168.0.100 -i ~/.ssh/id_ed25519 "$WSL_REPO/status-monitor/app.py" root@192.168.0.201:/tmp/app.py
# Etape 3: Installation et redemarrage sur CT201
echo "[DEPLOY] Installation sur CT201..."
ssh -J root@192.168.0.100 -i ~/.ssh/id_ed25519 root@192.168.0.201 "mv /tmp/app.py /opt/status-monitor/app.py && systemctl restart status-monitor && echo '[DEPLOY] OK - CT201 updated'"
echo "[DEPLOY] OK - All done: IDE -> WSL -> CT200/CT100 -> CT201"