The build step now also runs for pull requests against master, so a broken
site is caught before merge. Deploying is gated behind the event type, so
only pushes to master, the daily schedule and manual dispatches publish.
rsync now runs with --delete: files no longer produced by the build are
removed from the server instead of lingering.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Replaces .woodpecker/deploy.yml with .github/workflows/deploy.yml, keeping
the same shape: build with Hugo, then rsync public/ to the web host over SSH
using the existing SSH_HOST / SSH_USER / SSH_PATH / SSH_PRIVATE_KEY secrets.
The hand-rolled SSH setup is replaced by actions/ssh-deploy-action, and the
Woodpecker "Daily build" cron becomes a schedule: trigger, plus
workflow_dispatch for manual runs.
Hugo is installed from a pinned, checksum-verified extended release because
the ci-base image does not ship it and the theme transpiles Sass.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>