Commit Graph

32 Commits

Author SHA1 Message Date
1632db3efd ci: fix secrets typo + wasm32 sharp fallback 2026-03-31 09:49:39 +02:00
7321a05419 ci: install sharp wasm32 fallback for FreeBSD 2026-03-31 09:48:50 +02:00
190a1d9684 ci: rebuild sharp from source for FreeBSD runner 2026-03-31 09:41:52 +02:00
30afa60930 ci: adapt deploy workflow for Gitea FreeBSD runner 2026-03-31 09:17:18 +02:00
svemagie
6f2e7291e8 fix(deploy): use SITE_URL for syndication webhook me claim and endpoint
- me claim must be the publication URL (SITE_URL), not a separate INDIEKIT_URL
- SITE_URL is already a configured secret in this repo
- Show HTTP response body and status code for easier debugging

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 07:57:00 +01:00
svemagie
429a473f89 feat(deploy): trigger syndication webhook after successful deploy
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 07:39:47 +01:00
svemagie
f6f7cac403 fix: harden unfurl timeout + persist CI fetch cache
- Add hard 22s Promise.race deadline in prefetchUrl() to guard against
  TCP-level connection hangs that bypass unfurl.js's read-only timeout.
  Fixes builds hanging indefinitely on unresponsive hosts.

- Add actions/cache step to deploy.yml persisting .cache/ between runs.
  Prevents webmention (and all eleventy-fetch) data loss on transient
  502s: a populated cache means failures return existing data, not [].

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 22:28:40 +01:00
svemagie
b0b87d24c4 fix(deploy): exclude content/.indiekit/ from rsync --delete
This directory is managed by the node jail, not by the build. rsync
was trying to delete homepage.json (placed by the other jail) and
failing with permission denied.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 21:38:05 +01:00
svemagie
55884b83f2 fix(deploy): use rsync -rlz instead of -avz to avoid permission errors
The deploy user cannot set timestamps on the jail root directory.
Drop -a (which implies -t, -p, -o, -g) in favor of -rlz (recursive,
symlinks, compress) which is sufficient for deploying static files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 21:35:58 +01:00
svemagie
7ebd3037e6 fix(deploy): switch from SCP to rsync --delete to remove stale files
SCP only copies files over, leaving deleted files on the server. rsync
with --delete compares source and destination, removing files that no
longer exist in the build output.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 21:27:39 +01:00
svemagie
aaed5e70a1 Update cron schedule to run every 3 hours 2026-03-16 10:54:50 +01:00
svemagie
bb1b2d1fda ci: upgrade to actions/checkout@v5 and setup-node@v5 (Node.js 24 ready) 2026-03-15 08:52:15 +01:00
svemagie
58fad5df08 rebuild 90 min 2026-03-13 05:55:19 +01:00
svemagie
b421ad8452 chore: deploy optimization 2026-03-11 19:28:43 +01:00
svemagie
daf5e2b616 chore: update deploy workflow 2026-03-11 19:10:27 +01:00
svemagie
f4bea58d07 fix: use bastille cmd to fetch homepage.json from node jail
SCP can't access the jail filesystem directly; use SSH + bastille cmd
instead, same pattern as the node jail deploy workflow.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-11 10:34:47 +01:00
svemagie
0e075b54d8 feat: fetch homepage.json from node jail before build
Adds a pre-build SCP step to pull the live homepage config from the
node jail, so GitHub Actions always builds with the latest admin-saved
config instead of the stale committed version.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-11 10:24:56 +01:00
svemagie
2b9e037e72 fix: use GH_TOKEN secret for authenticated GitHub API calls in build 2026-03-10 02:07:34 +01:00
svemagie
35d1152ea7 fix: add GITHUB_TOKEN to build step for authenticated GitHub API calls 2026-03-10 01:55:24 +01:00
svemagie
ec9887a6d7 fix: social activity widget - Bluesky and Mastodon feeds not rendering
- deploy.yml: add missing BLUESKY_HANDLE env var to Build site step
- deploy.yml: fix GITHUB_USERNAME secret name (was GH_USERNAME)
- mastodonFeed.js: read MASTODON_URL first, fall back to MASTODON_INSTANCE
- mastodonFeed.js: add early-return guard when instance/user vars are empty
- mastodonFeed.js: also accept MASTODON_USERNAME as fallback for MASTODON_USER

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-10 01:31:19 +01:00
svemagie
63ac978fc3 change deploy cron 2026-03-10 00:34:46 +01:00
svemagie
0f5e8d1ec9 Add scheduled listening refresh and configurable fetch cache 2026-03-09 15:02:50 +01:00
svemagie
0e66579f36 feat(where): add OwnYourSwarm checkins page and metadata 2026-03-08 15:27:56 +01:00
svemagie
2ad048338d fix(ci): write .env with printf-safe secret handling 2026-03-08 14:29:30 +01:00
svemagie
f2a0c9e930 fix(ci): include SITE_SOCIAL in deploy build env 2026-03-08 14:27:44 +01:00
svemagie
ee654cc6b9 fix(ci): export ACTIVITYPUB_HANDLE during build 2026-03-08 14:04:55 +01:00
svemagie
3a13229b7b fix(ci): export AUTHOR_AVATAR during build 2026-03-08 13:56:46 +01:00
svemagie
5722e80c8e Remove legacy IndieKit auth config from static blog repo 2026-03-08 04:41:43 +01:00
svemagie
994f49f202 Update deploy.yml to create and deploy .env file with IndieKit password 2026-03-06 11:13:30 +01:00
svemagie
9b4c6dba40 fix: add build:css step and env vars to workflow 2026-03-06 10:52:06 +01:00
svemagie
cc803f0793 port 2026-03-05 23:32:44 +01:00
svemagie
5e9eb12322 deploy 2026-03-05 23:19:06 +01:00