#!/bin/bash set -euo pipefail cd "$(dirname "$0")/.." REPO_ROOT="$(pwd)" export PATH="$HOME/.local/bin:$PATH" export NVM_DIR="$HOME/.nvm" # shellcheck source=/dev/null [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" echo "==> Updating source..." git pull echo "==> Rebuilding gnexus-ui-kit..." cd "$HOME/gnexus-ui-kit" git pull npm install npm run build echo "==> Rebuilding UI..." cd "$REPO_ROOT/ui" npm install npm run build echo "==> Updating server dependencies..." cd "$REPO_ROOT/server" uv pip install -e ".[dev]" echo "==> Syncing dist to /var/www..." sudo cp -r "$REPO_ROOT/ui/dist/"* /var/www/gnexus-book/ sudo chown -R www-data:www-data /var/www/gnexus-book echo "==> Restarting services..." systemctl --user daemon-reload systemctl --user restart gnexus-book-backend.service echo "==> Reloading nginx..." sudo nginx -t && sudo systemctl reload nginx echo "==> Deploy complete." systemctl --user status gnexus-book-backend.service --no-pager