42 lines
1.0 KiB
Bash
Executable File
42 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# deploy.sh - Deploy kashilo.com to production server via rsync
|
|
#
|
|
# Usage: ./deploy.sh [user@host] [remote-path]
|
|
# Example: ./deploy.sh admin@kashilo.com /home/admin/web/kashilo.com/public_html
|
|
#
|
|
# Prerequisites:
|
|
# - SSH key authentication configured
|
|
# - rsync installed locally and on server
|
|
|
|
set -e
|
|
|
|
# --- Configuration ---
|
|
REMOTE_USER_HOST="${1:-alex@k14.hopto.org}"
|
|
REMOTE_PATH="${2:-/home/alex/web/kashilo.com/public_html}"
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
DIST_DIR="$SCRIPT_DIR/dist"
|
|
|
|
# --- Build (minify JS + CSS) ---
|
|
echo "Building..."
|
|
python3 "$SCRIPT_DIR/build.py"
|
|
echo ""
|
|
|
|
# --- Deploy from dist/ ---
|
|
echo "Deploying kashilo.com"
|
|
echo " From: $DIST_DIR"
|
|
echo " To: $REMOTE_USER_HOST:$REMOTE_PATH"
|
|
echo ""
|
|
|
|
if command -v rsync &> /dev/null; then
|
|
rsync -avz --delete \
|
|
"$DIST_DIR/" \
|
|
"$REMOTE_USER_HOST:$REMOTE_PATH/"
|
|
else
|
|
echo "(using scp fallback)"
|
|
ssh "$REMOTE_USER_HOST" "rm -rf $REMOTE_PATH/*"
|
|
scp -r "$DIST_DIR/"* "$REMOTE_USER_HOST:$REMOTE_PATH/"
|
|
fi
|
|
|
|
echo ""
|
|
echo "Deploy complete."
|