45 lines
1.3 KiB
Bash
Executable File
45 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# deploy.sh - Deploy Uptime Kuma Status Page CSS
|
|
# Domain: status.free-warez.top
|
|
# Target Host: free-warez.win -> /opt/containers/uptime/data/kuma.db
|
|
|
|
set -euo pipefail
|
|
|
|
TARGET_HOST="free-warez.win"
|
|
LOCAL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
CSS_FILE="$LOCAL_DIR/durchblick.css"
|
|
|
|
echo "🚀 Deploying Uptime Kuma Status Page CSS"
|
|
echo " Target: $TARGET_HOST:uptime-kuma"
|
|
echo "==============================================="
|
|
|
|
if [ ! -f "$CSS_FILE" ]; then
|
|
echo "❌ CSS file $CSS_FILE not found."
|
|
exit 1
|
|
fi
|
|
|
|
# 1. Check SSH connection
|
|
echo "📡 Checking SSH connection to $TARGET_HOST..."
|
|
if ! ssh -q -o BatchMode=yes -o ConnectTimeout=5 "$TARGET_HOST" exit; then
|
|
echo "❌ Cannot connect to $TARGET_HOST via SSH."
|
|
exit 1
|
|
fi
|
|
|
|
# 2. Transfer and update SQLite
|
|
echo "🔄 Updating status page custom_css in kuma.db..."
|
|
scp "$CSS_FILE" "$TARGET_HOST:/tmp/durchblick.css"
|
|
ssh "$TARGET_HOST" "python3 - << 'PYEOF'
|
|
import sqlite3
|
|
css = open('/tmp/durchblick.css').read()
|
|
conn = sqlite3.connect('/opt/containers/uptime/data/kuma.db')
|
|
c = conn.cursor()
|
|
c.execute('UPDATE status_page SET custom_css = ? WHERE slug = ?', (css, 'durchblick'))
|
|
conn.commit()
|
|
conn.close()
|
|
print('✅ Updated status_page durchblick in kuma.db')
|
|
PYEOF
|
|
rm -f /tmp/durchblick.css
|
|
"
|
|
|
|
echo "✨ Deployment complete!"
|