#!/usr/bin/env bash # استقرارِ بکندِ حکم‌شو روی سرور: کراس‌کامپایل لینوکس + آپلود + ری‌استارتِ systemd. # بدونِ رمز (کلیدِ SSH). اجرا: ./deploy.sh set -euo pipefail HOST="${HAKEM_HOST:-ubuntu@95.38.179.159}" KEY="${HAKEM_KEY:-$HOME/.ssh/hakem_deploy}" REMOTE_DIR="/home/ubuntu/hakemsho" cd "$(dirname "$0")" echo "==> build linux/amd64 (CGO off, pure-Go sqlite)" CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -o /tmp/hakemsho-linux ./cmd/server echo "==> upload to $HOST" scp -i "$KEY" -o StrictHostKeyChecking=no /tmp/hakemsho-linux "$HOST:$REMOTE_DIR/hakemsho.new" echo "==> swap in + restart (zero-config; data & env untouched)" ssh -i "$KEY" -o StrictHostKeyChecking=no "$HOST" ' set -e mv ~/hakemsho/hakemsho.new ~/hakemsho/hakemsho chmod +x ~/hakemsho/hakemsho sudo systemctl restart hakemsho sleep 2 systemctl is-active hakemsho curl -s -m5 http://127.0.0.1:8080/health && echo ' echo "==> done: https://hakem.approagency.ir/health"