#!/bin/bash # Deploy latest kiosk code. # Always commits to Gitea and restarts kiosk-dev (dev/test machine). # If the production kiosk is reachable, deploys there too. # Usage: ./deploy.sh ["commit message"] KIOSK_LOCAL="jgitta@192.168.88.44" KIOSK_REMOTE="jgitta@100.64.0.1" REPO_DIR="$(cd "$(dirname "$0")" && pwd)" COMMIT_MSG="${1:-deploy: update from kiosk-dev $(date +%Y-%m-%d)}" echo "==> Committing and pushing to Gitea..." git -C "$REPO_DIR" add -A git -C "$REPO_DIR" commit -m "$COMMIT_MSG" 2>/dev/null || echo " (nothing new to commit)" git -C "$REPO_DIR" push origin master || echo " (nothing new to push)" echo "==> Restarting kiosk-dev..." /usr/local/bin/kiosk-restart echo "==> Trying production kiosk..." KIOSK="" if ssh -o ConnectTimeout=5 -o BatchMode=yes $KIOSK_LOCAL "echo ok" &>/dev/null; then KIOSK="$KIOSK_LOCAL" echo " Reaching production via local network" elif ssh -o ConnectTimeout=8 -o BatchMode=yes $KIOSK_REMOTE "echo ok" &>/dev/null; then KIOSK="$KIOSK_REMOTE" echo " Reaching production via Tailscale" else echo " Production kiosk unreachable — skipping (will deploy when online)" fi if [ -n "$KIOSK" ]; then ssh "$KIOSK" " cd /home/jgitta/kiosk-browser git pull /usr/local/bin/kiosk-restart " echo " Production updated." fi echo "==> Deploy complete!"