ci: keep curl+tar checkout in the build job (no node in stage3 container)
actions/checkout can't run in the build job: the Gitea runner executes JS actions via `docker exec node …` inside the job container, and gentoo/stage3 ships no node, so checkout died with `exec: "node": ... not found` (exit 127) in run 111. Revert the build job to the node-free curl+tar checkout (restore net-misc/curl, /var/db/repos/azy5030 paths) and document why. The lint job keeps actions/checkout — it has no container: and runs in the runner's default node-capable image, where plain checkout works on this SHA-1 repo (confirmed green in run 111's lint job). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018MsAYv5RhNLE54fPrviVgS
This commit is contained in:
@@ -65,10 +65,14 @@ Runs on every push, two jobs. A **`lint`** job runs on the plain Docker-backend
|
||||
`just lint` (markdownlint/shellcheck/yamllint/actionlint). The **`build`** job has
|
||||
`needs: lint` (lint is a gate) and runs inside a `gentoo/stage3:amd64-openrc` container:
|
||||
`emerge-webrsync` to sync `::gentoo` → configure portage (disables binpkg signature
|
||||
verification so prebuilt deps like `dev-lang/go` are pulled, not compiled; also pulls
|
||||
`dev-vcs/git`, which `actions/checkout` needs and stage3 lacks) → `actions/checkout`
|
||||
into `$GITHUB_WORKSPACE`, registered as the overlay via `repos.conf` →
|
||||
`pkgcheck scan` → `emerge` → assert `gitea-runner --version` matches the ebuild version.
|
||||
verification so prebuilt deps like `dev-lang/go` are pulled, not compiled) → **check out
|
||||
via `curl + tar`, not `actions/checkout`** into `/var/db/repos/azy5030` → `pkgcheck scan`
|
||||
→ `emerge` → assert `gitea-runner --version` matches the ebuild version.
|
||||
|
||||
The build job can't use `actions/checkout` (even though the lint job does): the Gitea
|
||||
runner executes JS actions by `docker exec node …` *inside* the job container, and
|
||||
`gentoo/stage3` ships no node, so any JS action fails with exit 127. The lint job has no
|
||||
`container:`, so it runs in the runner's default node-capable image and checkout works.
|
||||
|
||||
## Conventions / gotchas
|
||||
|
||||
|
||||
Reference in New Issue
Block a user