#!/usr/bin/env bash # Выкладка прототипа на сервер: сборка → rsync dist/ → права для nginx. # DEPLOY_HOST=root@host DEPLOY_REMOTE=/var/www/mappex/ bash deploy/publish.sh # По умолчанию — VDS YappiX (алиас yappix-vds из ~/.ssh/config) и https://mappex.yappix.ru. set -euo pipefail ROOT="$(cd "$(dirname "$0")/.." && pwd)" HOST="${DEPLOY_HOST:-yappix-vds}" REMOTE="${DEPLOY_REMOTE:-/var/www/mappex/}" cd "$ROOT" npm run build ssh "$HOST" "mkdir -p $REMOTE" # rsync переносит права macOS (например, 700) — без chmod nginx (www-data) ответит 403 rsync -az --delete dist/ "$HOST:$REMOTE" ssh "$HOST" "chown -R www-data:www-data $REMOTE && find $REMOTE -type f -exec chmod 644 {} + && find $REMOTE -type d -exec chmod 755 {} +" echo "Выложено: $HOST:$REMOTE"