sneak 602fd609e7
Some checks failed
check / check (push) Successful in 6s
Build and Deploy to Cloudflare Pages / build (push) Successful in 20s
probe / q1-upload-v3-node16 (push) Successful in 7s
probe / q2-upload-v3-node20 (push) Successful in 22s
probe / q3-build-for-roundtrip (push) Successful in 11s
Build and Deploy to Cloudflare Pages / deploy (push) Has been skipped
probe / q4-deploy-dryrun (push) Failing after 43s
Pin the artifact actions on v3: v4 does not work on this instance
Round 1 of the branch probes reproduced the main failure and localised it.
Observed commit-status output for 2d328e7:

    check / check                        success  10s
    Build and Deploy .../ build          failure  15s   <- reproduced
    Build and Deploy .../ deploy         skipped        <- if: guard working
    probe / p1-bare-alpine-checkout      failure   3s
    probe / p2-alpine-apk-checkout       success   5s
    probe / p3-alpine-apk-build          success  15s
    probe / p4-alpine-apk-upload         failure  11s
    probe / p5-node20alpine-checkout     success   8s
    probe / p6-node20slim-checkout       success  11s

Reading that:

- p1 vs p2: act_runner does not supply node for JavaScript actions, so the
  `apk add --no-cache nodejs git tar` prerequisite step is genuinely required
  and genuinely sufficient. checkout then runs on musl.
- p3: script/bootstrap and script/test complete inside the Actions container
  on the pinned alpine digest. The mandated image replacement was never the
  problem.
- p2 vs p4: the only difference is a trailing upload-artifact v4 step, and it
  is the difference between success and failure.
- p5/p6: musl is not the issue -- checkout runs on both musl and glibc images.

So what broke the deploy was not the image swap that everyone reviewed, it was
the v3 -> v4 artifact bump that nobody questioned. Gitea 1.25.4's artifact
backend and this runner do not serve the v4 protocol; the workflow used v3
before this issue and that is what worked.

The artifact actions therefore move back to the v3 line, still pinned by full
commit SHA, which satisfies the hash-pinning requirement this issue is actually
about. Both are the node20 builds rather than the node16 defaults, so nothing
depends on a node16 runtime:

- upload-artifact  -> c6a3b2bd (v3.2.2-node20)
- download-artifact -> ad191675 (v3.1.0-node20)

Round 2 probes: the two fallback v3 builds in case the node20 ones do not
resolve, plus a producer/consumer pair that rehearses the deploy job -- same
pinned node image, same pinned download action, same pinned wrangler version,
stopping short of `wrangler pages deploy` so it touches nothing external.
2026-08-09 02:50:36 +00:00

lora.vegas

Las Vegas Meshtastic and LoRa community website.

About

This site provides information about the Las Vegas mesh networking community, including:

  • Mesh channel configurations
  • Community coordination (Discord, Signal)
  • Meetup information
  • Local resources

Contributing

To contribute to this site, contact sneak@sneak.berlin for git repository access.

Technical Details

This is a static site built with Hugo. The site is deployed automatically via GitHub Actions.

Local Development

hugo server

Visit http://localhost:1313 to preview.

Build

hugo

Output will be in the public/ directory.

Entrypoints

This repository adheres to the Scripts to Rule Them All standard: normalized scripts in script/ are the entrypoints for the development workflow, and the Makefile targets are thin shims that call them. We provide:

  • script/bootstrap — install all build dependencies (git, make, hugo, node/npm) idempotently
  • script/setup — prepare a fresh clone: run script/bootstrap and install the git pre-commit hook
  • script/test — the correctness check: a clean hugo --minify production build
  • script/lint — a clean build that surfaces broken links and path collisions
  • script/fmt — format the repo's own top-level markdown docs with prettier
  • script/fmt-check — check that formatting (read-only)
  • script/check — run script/fmt-check then script/test; modifies nothing
  • script/docker — build the Docker image tagged with the project name
  • script/cibuild — the CI build (docker build .); the Dockerfile runs make check
  • script/install-precommit — install the git pre-commit hook that runs script/check

A convenience make serve target runs hugo server for local preview.

License

Content is provided as-is for community use.

Description
No description provided
https://lora.vegas
Readme MIT 320 KiB
Languages
Shell 72.9%
Dockerfile 13.4%
CSS 8.1%
HTML 3.7%
Makefile 1.9%