This commit is contained in:
parent
2fa6e70af1
commit
6841623e23
17 changed files with 2306 additions and 148 deletions
|
|
@ -27,12 +27,13 @@ jobs:
|
|||
# run inside this archlinux container — the runner execs them with
|
||||
# node. This shell step needs no node, so installing it here (before
|
||||
# Checkout) is enough.
|
||||
# ffmpeg is for ffprobe, which tools/fetch-media.sh uses to read the
|
||||
# pixel dimensions of each mirrored file. Those become the width/height
|
||||
# attributes that stop the posts page reflowing as 5 MB recordings
|
||||
# arrive, and tools/e2e.sh asserts they are present — so without this
|
||||
# package the deploy fails at the e2e gate rather than shipping a
|
||||
# janky page.
|
||||
# ffmpeg/ffprobe are both used by tools/fetch-media.sh. ffprobe reads
|
||||
# the pixel dimensions of each mirrored file, which become the
|
||||
# width/height attributes that stop the posts page reflowing as 5 MB
|
||||
# recordings arrive. ffmpeg transcodes each still image into the AVIF
|
||||
# and PNG renditions the page serves it between. tools/e2e.sh asserts
|
||||
# both are present — so without this package the deploy fails at the
|
||||
# e2e gate rather than shipping a janky page.
|
||||
pacman -Syu --noconfirm --needed \
|
||||
nodejs \
|
||||
clang lld libc++ \
|
||||
|
|
@ -84,18 +85,19 @@ jobs:
|
|||
run: tools/fetch-rates.sh
|
||||
|
||||
- name: Fetch fediverse posts
|
||||
# Build-time, not run-time: the site embeds the owner's own posts and
|
||||
# links out for discussion, so there is no sync service and no runtime
|
||||
# dependency on the instance being up. The script leaves the committed
|
||||
# content/posts.json untouched and exits 0 on any failure, so a
|
||||
# Build-time, not run-time: the site hosts the owner's own posts in full
|
||||
# and links out for the discussion, so there is no sync service and no
|
||||
# runtime dependency on the instance being up. The script leaves the
|
||||
# committed content/posts.json untouched and exits 0 on any failure, so a
|
||||
# fediverse outage cannot fail a deploy.
|
||||
run: tools/fetch-posts.sh
|
||||
|
||||
- name: Mirror post media
|
||||
# Downloads the images and screen recordings the posts carry and rewrites
|
||||
# content/posts.json to point at our own copies, so nothing the browser
|
||||
# loads is third-party — which is what keeps the privacy notice's
|
||||
# "everything comes from catcrafts.net" true.
|
||||
# Downloads the images and screen recordings the posts carry — both the
|
||||
# headline file and everything embedded inside the body — and rewrites
|
||||
# content/posts.json (including the body text itself) to point at our own
|
||||
# copies, so nothing the browser loads is third-party. That is what keeps
|
||||
# the privacy notice's "everything comes from catcrafts.net" true.
|
||||
#
|
||||
# Content-addressed: the name is the hash of the bytes. Note what that
|
||||
# does NOT mean — a third-party file is re-fetched on every build, because
|
||||
|
|
|
|||
Loading…
Reference in a new issue