Skip to content

Fix Base image build#5254

Merged
javanlacerda merged 1 commit into
masterfrom
fix-node-build
Apr 27, 2026
Merged

Fix Base image build#5254
javanlacerda merged 1 commit into
masterfrom
fix-node-build

Conversation

@javanlacerda

Copy link
Copy Markdown
Collaborator

Title: Fix Cloud Build GPG errors and upgrade to Node.js 20 (LTS)

Summary
This PR resolves the build failures in the clusterfuzz-images project caused by missing or expired GPG keys in the legacy NodeSource installation scripts. It also upgrades the base environment to use Node.js 20 (LTS).

Problem
The existing docker/base build was failing with the following error:
GPG error: https://deb.nodesource.com/node_19.x focal InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 1655A0AB68576280

This was due to the use of the deprecated setup_19.x script and a Node.js version (19) that is no longer supported.

Solution

  1. Upgraded to Node.js 20 (LTS): Migrated from Node 19 to the current stable Long Term Support version.
  2. Modernized Installation Method: Replaced the legacy 15,000-line setup_19.x bash script with the modern, secure NodeSource installation method using /etc/apt/keyrings and a signed repository entry.
  3. Binary Version Consistency: Updated the Ubuntu 24.04 Dockerfile to download and install the Node 20.12.2 (LTS) binary directly.
  4. Cleanup: Removed the now-obsolete docker/base/setup_19.x script from the repository.

Changes

  • docker/base/Dockerfile: Updated to use the new NodeSource apt repository method for Node 20.
  • docker/base/ubuntu-20-04.Dockerfile: Updated to use the new NodeSource apt repository method for Node 20.
  • docker/base/ubuntu-24-04.Dockerfile: Updated binary download URL and extraction logic for Node 20.12.2.
  • docker/base/setup_19.x: Deleted.

Impact

  • Fixes all base image builds in Cloud Build.
  • Ensures the project uses a supported, secure version of Node.js.
  • Reduces technical debt by removing legacy scripts in favor of standard Linux package management.

@javanlacerda javanlacerda requested a review from a team as a code owner April 24, 2026 19:38
@javanlacerda javanlacerda changed the title Fix Node.js GPG errors and upgrade to Node 20 Fix Base image build Apr 24, 2026
@javanlacerda javanlacerda merged commit acf7691 into master Apr 27, 2026
9 of 10 checks passed
@javanlacerda javanlacerda deleted the fix-node-build branch April 27, 2026 11:42
javanlacerda added a commit that referenced this pull request Apr 27, 2026
That's a follow up of #5254. 

It moves to push the immutable images to a private folder
`clusterfuzz-immutable-images`

---------

Signed-off-by: Javan Lacerda <javanlacerda@google.com>
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.

2 participants