From 8abd0ac01e9255a441460ec4bf4b75cf1c4a7f09 Mon Sep 17 00:00:00 2001 From: Alexander Whitestone Date: Tue, 7 Apr 2026 02:25:33 -0400 Subject: [PATCH] fix(ci): pin container image with Node.js for act runner compatibility The bezalel-vps-runner (act v0.2.11) fails in 1-6s because Node.js is not in PATH of the default runner container, preventing any GitHub Actions (actions/checkout, setup-uv, setup-node, etc.) from executing. Add `container: catthehacker/ubuntu:act-22.04` to all workflow jobs. This image is purpose-built for act runners and includes Node.js, git, Python, npm, and other common CI tooling needed to run GitHub Actions. Fixes #174 Co-Authored-By: Claude Sonnet 4.6 --- .gitea/workflows/ci.yml | 1 + .gitea/workflows/notebook-ci.yml | 1 + .github/workflows/dependency-audit.yml | 1 + .github/workflows/docs-site-checks.yml | 1 + .github/workflows/quarterly-security-audit.yml | 1 + .github/workflows/secret-scan.yml | 1 + .github/workflows/supply-chain-audit.yml | 1 + .github/workflows/tests.yml | 1 + 8 files changed, 8 insertions(+) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 082b4f997..a044a643d 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -13,6 +13,7 @@ concurrency: jobs: smoke-and-build: runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 timeout-minutes: 5 steps: - name: Checkout code diff --git a/.gitea/workflows/notebook-ci.yml b/.gitea/workflows/notebook-ci.yml index d3794b414..8ce1e6f45 100644 --- a/.gitea/workflows/notebook-ci.yml +++ b/.gitea/workflows/notebook-ci.yml @@ -11,6 +11,7 @@ on: jobs: notebook-smoke: runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/dependency-audit.yml b/.github/workflows/dependency-audit.yml index acc20d5a2..b9dab2225 100644 --- a/.github/workflows/dependency-audit.yml +++ b/.github/workflows/dependency-audit.yml @@ -19,6 +19,7 @@ jobs: audit: name: Audit Python dependencies runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 steps: - uses: actions/checkout@v4 - uses: astral-sh/setup-uv@v5 diff --git a/.github/workflows/docs-site-checks.yml b/.github/workflows/docs-site-checks.yml index 6e4b966b2..1b741fd46 100644 --- a/.github/workflows/docs-site-checks.yml +++ b/.github/workflows/docs-site-checks.yml @@ -10,6 +10,7 @@ on: jobs: docs-site-checks: runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/quarterly-security-audit.yml b/.github/workflows/quarterly-security-audit.yml index caba6263a..3d737d007 100644 --- a/.github/workflows/quarterly-security-audit.yml +++ b/.github/workflows/quarterly-security-audit.yml @@ -19,6 +19,7 @@ jobs: create-audit-issue: name: Create quarterly security audit issue runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/secret-scan.yml b/.github/workflows/secret-scan.yml index f630aff65..e3b2ae5de 100644 --- a/.github/workflows/secret-scan.yml +++ b/.github/workflows/secret-scan.yml @@ -12,6 +12,7 @@ jobs: scan: name: Scan for secrets runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 steps: - uses: actions/checkout@v4 with: diff --git a/.github/workflows/supply-chain-audit.yml b/.github/workflows/supply-chain-audit.yml index b94e1dda4..009627eb7 100644 --- a/.github/workflows/supply-chain-audit.yml +++ b/.github/workflows/supply-chain-audit.yml @@ -12,6 +12,7 @@ jobs: scan: name: Scan PR for supply chain risks runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 5d8711e15..f1ea42430 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -14,6 +14,7 @@ concurrency: jobs: test: runs-on: ubuntu-latest + container: catthehacker/ubuntu:act-22.04 timeout-minutes: 10 steps: - name: Checkout code -- 2.43.0