30 lines
1.0 KiB
Bash
Executable File
30 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# استقرارِ پنلِ ادمینِ حکمشو: build ایستا + آپلود به سرور (همان سرورِ بکاند).
|
|
# nginx فایلها را زیرِ https://hakem.approagency.ir/panel/ سرو میکند.
|
|
set -euo pipefail
|
|
|
|
HOST="${HAKEM_HOST:-ubuntu@37.32.20.103}"
|
|
KEY="${HAKEM_KEY:-$HOME/.ssh/hakem_deploy}"
|
|
REMOTE_DIR="/var/www/hakem-panel/panel" # با root در nginx: /panel → این پوشه
|
|
|
|
cd "$(dirname "$0")/.."
|
|
|
|
echo "==> build (static export → ./out)"
|
|
npm run build
|
|
|
|
if [ ! -d out ]; then
|
|
echo "build produced no ./out" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "==> upload to $HOST:$REMOTE_DIR"
|
|
# محتوای پوشه را جایگزین میکنیم (tar pipe روی یک اتصالِ SSH).
|
|
tar -C out -czf - . | ssh -i "$KEY" -o StrictHostKeyChecking=no "$HOST" "
|
|
set -e
|
|
sudo mkdir -p '$REMOTE_DIR'
|
|
sudo find '$REMOTE_DIR' -mindepth 1 -delete
|
|
sudo tar -C '$REMOTE_DIR' -xzf -
|
|
sudo chown -R www-data:www-data /var/www/hakem-panel
|
|
"
|
|
echo "==> done: https://hakem.approagency.ir/panel/"
|