Skip to content

Add RHEL 8 Power 9 to CI #4236

@richardlau

Description

@richardlau

Support for Power 8 has been dropped from V8 starting in https://chromium-review.googlesource.com/c/v8/v8/+/7410294 included in V8 14.5. In preparation for this we landed nodejs/node#61005 as a semver-major on Node.js' main branch. This will affect AIX, Linux and IBM i, but this issue will concentrate on Linux (we'll handle the other platforms separately).

We will need to add RHEL 8 on Power 9 hardware to be able to continue to build/test/release Node.js once we pick up versions of V8 that have dropped support for Power 8.

One option was to replace all of our Linux on Power 8 machines with Power 9 ones, but we discussed that internally within IBM and decided to keep the Power 8 machines for the existing release lines (i.e. Node.js 25, 24, 22 and 20).

At the moment we have 9 Linux on Power 8 machines hosted at OSUOSL, fully using our quota on the OpenPower OpenStack:

  • x1 release machine
  • x4 RHEL 8 test machines
  • x4 RHEL 9 test machines

In general we aim for a minimum of x2 test machines and x1 release machine.

Our plan is to add a small number of additional IBM Cloud (PowerVS) hosted Power 9 machines, and also rebalance the distribution of machines hosted at OSUOSL. We would end up with:

os/arch ibm osuosl change
RHEL 8 Power 8 release - 1 No change
RHEL 8 Power 8 test - 3 Remove one OSUOSL machine
RHEL 8 Power 9 release - 1 Add one OSUOSL machine
RHEL 8 Power 9 test 1 2 Add one IBM machine and two OSUOSL machines
RHEL 9 Power 9 test 1 2 Add one IBM machine and remove two OSUOSL machines

This would give us x3 test machines (instead of x4), which would be a slight reduction but should be tolerable (we can revisit this later).

In addition:

  • A new Jenkins label rhel8-power9le would be created. The existing rhel8-ppc64le would remain but now implicitly mean "on Power 8".
  • VersionSelectorScript.groovy would need to:
    • Prevent rhel8-ppc64le from running on Node.js >= 26 (release and test).
    • Prevent rhel8-power9le from running on Node.js < 26 (release only).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions