Commit Graph

10 Commits

Author SHA1 Message Date
haemka 5cb98faab9 Force IPv4 for git.haemka.in SSH connections too
Build and deploy / build-and-deploy (push) Failing after 24s
Missed two spots: the git.haemka.in keyscan and the submodule fetch's
GIT_SSH_COMMAND. If git.haemka.in's DNS answer includes an AAAA record
(depends on which resolver the runner hits), these hit the same no
IPv6 route issue intermittently, explaining the flaky failures.
2026-08-13 15:35:16 +00:00
haemka bfbe77e08a Force IPv4 for SSH connections to the deploy host
Build and deploy / build-and-deploy (push) Failing after 40s
aquaria.haemka.net has both A and AAAA records; the runner container has
no IPv6 route, so ssh picked the AAAA address and failed with 'Network
is unreachable'. Force -4 on both the keyscan and the actual rsync
connection.
2026-08-13 15:30:42 +00:00
haemka b87c1e685a Stop suppressing ssh-keyscan stderr in Set up SSH key step
Build and deploy / build-and-deploy (push) Failing after 2m58s
The step failed silently (exit 1, no message) because stderr was
redirected to /dev/null while sh -e aborts on ssh-keyscan's non-zero
exit. Let the real error (DNS/firewall/etc.) show up in the log.
2026-08-13 15:25:21 +00:00
haemka 88a9e83e35 Revert DEPLOY_USER back to a secret
Build and deploy / build-and-deploy (push) Failing after 39s
Only host/port were asked to move to variables; user stays a secret.
2026-08-13 15:22:00 +00:00
haemka 53f6c3da23 Move deploy host/port/user/path to repo variables, split port out
None of these are sensitive, so use Actions variables (vars) instead of
secrets. DEPLOY_PORT is now its own variable (default 22) rather than
being packed into DEPLOY_HOST. Only DEPLOY_SSH_KEY remains a secret.
2026-08-13 15:19:13 +00:00
haemka b68a2cc916 Support non-standard SSH port in DEPLOY_HOST (fqdn:port)
ssh-keyscan and rsync's -e ssh both need the port passed via -p rather
than embedded in the hostname; parse DEPLOY_HOST accordingly, defaulting
to 22 when no port is given.
2026-08-13 15:16:54 +00:00
haemka 33654a1030 Use SSH deploy key instead of account token for theme submodule
Build and deploy / build-and-deploy (push) Failing after 2m43s
Avoids tying CI to a personal/bot Gitea account: the same DEPLOY_SSH_KEY
secret used for the webserver rsync step is reused as a read-only Gitea
deploy key on hmk/pelican-latex. The submodule's tracked HTTPS URL is
overridden to SSH just for this checkout so it authenticates with that
key instead of needing a token with access to both repos.
2026-08-13 15:13:44 +00:00
haemka 387a53d37c Pass explicit token to checkout for private theme submodule
The default per-job Actions token only covers the triggering repo; the
theme submodule lives in a separate private repo (hmk/pelican-latex), so
cloning it needs a token with read access to both. Add CHECKOUT_TOKEN
as a repo secret (a Gitea access token with repo read scope) for this
to work.
2026-08-13 15:08:26 +00:00
haemka 88bed173c1 Install nodejs in workflow container so actions/checkout can run
Build and deploy / build-and-deploy (push) Failing after 19s
python:3.12-slim has no Node.js; JS-based actions like actions/checkout
need it to execute their bundled dist/index.js.
2026-08-13 15:03:49 +00:00
haemka d47300a4d7 Add Gitea Actions workflow to build and deploy the site
Build and deploy / build-and-deploy (push) Failing after 11s
Requires a self-hosted runner and repo secrets (DEPLOY_HOST, DEPLOY_USER,
DEPLOY_PATH, DEPLOY_SSH_KEY) to be set up before it will actually run.
2026-08-13 14:46:19 +00:00