From 23fb036b9295de69d86143f4024307b280673dd3 Mon Sep 17 00:00:00 2001 From: Erich Blume Date: Wed, 11 Feb 2026 17:35:33 -0800 Subject: [PATCH] Restore Node.js to runner image for JavaScript Actions (#163) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary - Restores Node.js 20 LTS to the Forgejo runner job image - `actions/checkout@v4` and other JavaScript Actions require `node` in the job container - The Phase 3 simplification (PR #162) accidentally removed it, breaking all CI runs ## Changes - `containers/forgejo-runner/Dockerfile`: Add `gnupg` (for nodesource GPG key) and Node.js 20 via nodesource - Changelog fragment ## Test plan - [ ] Merge, release as `forgejo-runner-v3.0.1` - [ ] Update runner manifest to v3.0.1, sync, restart pod - [ ] Trigger a workflow_dispatch and verify `actions/checkout` succeeds 🤖 Generated with [Claude Code](https://claude.com/claude-code) Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/163 --- containers/forgejo-runner/Dockerfile | 7 +++++++ docs/changelog.d/fix-runner-node.bugfix.md | 1 + 2 files changed, 8 insertions(+) create mode 100644 docs/changelog.d/fix-runner-node.bugfix.md diff --git a/containers/forgejo-runner/Dockerfile b/containers/forgejo-runner/Dockerfile index be569ed..1661db9 100644 --- a/containers/forgejo-runner/Dockerfile +++ b/containers/forgejo-runner/Dockerfile @@ -18,10 +18,17 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates \ curl \ git \ + gnupg \ jq \ tzdata \ && rm -rf /var/lib/apt/lists/* +# Install Node.js (required by actions/checkout and other JavaScript Actions) +RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ + && apt-get install -y --no-install-recommends nodejs \ + && rm -rf /var/lib/apt/lists/* \ + && node --version + # Install uv (Python package runner for towncrier) RUN curl -LsSf https://astral.sh/uv/install.sh | sh \ && mv /root/.local/bin/uv /usr/local/bin/uv \ diff --git a/docs/changelog.d/fix-runner-node.bugfix.md b/docs/changelog.d/fix-runner-node.bugfix.md new file mode 100644 index 0000000..8b9456f --- /dev/null +++ b/docs/changelog.d/fix-runner-node.bugfix.md @@ -0,0 +1 @@ +Restore Node.js to Forgejo runner image — required by ``actions/checkout@v4`` and other JavaScript Actions that were broken by the Phase 3 simplification.