Skip to content

[WIP] fix(ci): resolve release failure for budge#2317

Draft
Copilot wants to merge 2 commits intomainfrom
copilot/fix-ci-release-failure-budge
Draft

[WIP] fix(ci): resolve release failure for budge#2317
Copilot wants to merge 2 commits intomainfrom
copilot/fix-ci-release-failure-budge

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 7, 2026

Refs #2310 (release autofix issue for budge run 25485480759)
Failed CI run: https://github.com/trueforge-org/containerforge/actions/runs/25485480759

Root cause

The python-node base was upgraded from 3.13 → 3.14.4, bumping Node.js from 22 → 24. budge's backend (linuxserver/budge v0.0.9) declares bcrypt ^5.0.1. bcrypt 5.x ships an old node-addon-api whose napi.h is incompatible with Node 24's V8 / NAPI headers (expected unqualified-id before ')' token, etc.). On amd64 a prebuilt napi-v3 binary is fetched so the source build is skipped; on arm64 node-pre-gyp falls back to compiling and the build fails.

Fix

Before npm install in apps/budge/Dockerfile, set the direct dependency to bcrypt ^6.0.0 via npm pkg set. bcrypt 6.x supports Node 24 and ships prebuilt napi binaries for arm64. The bcrypt API surface used by budge (bcrypt.hash / bcrypt.compare) is unchanged between v5 and v6.

Checklist

  • Reproduced arm64 failure locally (matches CI: node-addon-api compile error in bcrypt)
  • Applied minimal in-Dockerfile fix scoped to apps/budge/
  • docker buildx bake --print validated
  • Full linux/arm64 build succeeded locally with the fix
  • No version misalignment between Dockerfile and docker-bake.hcl (no version bump)
  • Runtime model unchanged (rootless, /config for data)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(ci): release failure for budge (run 25485480759)

2 participants