montana/Russian/Site/montana-archive/deploy.sh

39 lines
1.8 KiB
Bash
Raw Normal View History

2026-05-18 18:05:32 +03:00
#!/bin/bash
set -euo pipefail
REMOTE=montana-moscow
HERE="$(cd "$(dirname "$0")" && pwd)"
echo "→ копируем скрипт builder и static"
scp "$HERE/scripts/build-archives.sh" "$REMOTE":/usr/local/bin/montana-build-archives
ssh "$REMOTE" "chmod 755 /usr/local/bin/montana-build-archives"
ssh "$REMOTE" "mkdir -p /var/www/montana_hub_static /var/www/montana_archive"
scp "$HERE/static/robots-hub.txt" "$REMOTE":/var/www/montana_hub_static/robots.txt
scp "$HERE/static/llms.txt" "$REMOTE":/var/www/montana_hub_static/llms.txt
scp "$HERE/static/llms.txt" "$REMOTE":/var/www/montana_quest/llms.txt
ssh "$REMOTE" "chown -R root:root /var/www/montana_hub_static /var/www/montana_archive && chmod 755 /var/www/montana_archive"
echo "→ systemd unit + timer"
scp "$HERE/systemd/montana-archive.service" "$REMOTE":/etc/systemd/system/
scp "$HERE/systemd/montana-archive.timer" "$REMOTE":/etc/systemd/system/
ssh "$REMOTE" "systemctl daemon-reload && systemctl enable --now montana-archive.timer"
echo "→ первая сборка (синхронно, чтобы /archive/ сразу не был пустым)"
ssh "$REMOTE" "systemctl start montana-archive.service && systemctl status montana-archive.service --no-pager | head -15"
echo "→ патч nginx"
scp "$HERE/nginx/patch.sh" "$REMOTE":/tmp/montana-nginx-patch.sh
ssh "$REMOTE" "bash /tmp/montana-nginx-patch.sh"
echo "→ smoke-test"
echo '/archive/ ──'
curl -sI https://montana.quest/archive/ | head -3
echo '/archive/SHA256SUMS ──'
curl -sI https://montana.quest/archive/SHA256SUMS | head -3
echo 'hub /robots.txt ──'
curl -sI https://hub.montana.quest/robots.txt | head -3
echo '/llms.txt ──'
curl -sI https://montana.quest/llms.txt | head -3
echo 'CORS на hub корень ──'
curl -sI https://hub.montana.quest/ | grep -i access-control || echo "(нет CORS — проверь patch.sh)"