Skip to content

fix(openmpi): restore openmpi-devel subpackages#17843

Open
miz060 wants to merge 3 commits into
3.0-devfrom
mitchzhu/fix-openmpi
Open

fix(openmpi): restore openmpi-devel subpackages#17843
miz060 wants to merge 3 commits into
3.0-devfrom
mitchzhu/fix-openmpi

Conversation

@miz060

@miz060 miz060 commented Jun 29, 2026

Copy link
Copy Markdown
Member

What

Remove the OpenMPI build_all_in_one_rpm switch and always build split RPMs: openmpi-runtime, openmpi-devel, and openmpi-docs. Also make openmpi, openmpi-devel, and openmpi-docs depend on the matching 3:4.1.9a1-2 openmpi-runtime package.

Why — fixes the openmpi golden-container failure after DOCA 3.3.0

After PR #17447 (kernel-hwe: Upgrade to 6.18.31.1 and doca to 3.3.0), the openmpi golden-container build started failing in the Build openmpi Container stage.

The golden-container recipe installs:

openmpi
openmpi-devel

but the new DOCA OpenMPI spec defaulted to all-in-one packaging. That meant the local build no longer produced a matching openmpi-devel RPM, so the container build could resolve openmpi-devel from PMC instead, causing a version/dependency conflict with the locally built DOCA OpenMPI RPMs.

Root cause

The DOCA 3.3.0 OpenMPI spec changed the default:

%{!?build_all_in_one_rpm: %define build_all_in_one_rpm 1}

With build_all_in_one_rpm=1, the split runtime/devel/docs file packaging path is skipped by default. This regressed the previous Azure Linux behavior where openmpi-devel was built unconditionally.

Fix

Remove the all-in-one switch and make split packaging unconditional. The spec now always emits:

openmpi
openmpi-runtime
openmpi-devel
openmpi-docs

Validation

Default OpenMPI builds back to split RPM mode so openmpi-devel is built
locally instead of falling back to PMC. Add matching runtime
dependencies for openmpi, openmpi-devels, and openmpi-docs.

Signed-off-by: Mitch Zhu <mitchzhu@microsoft.com>
@miz060 miz060 requested a review from a team as a code owner June 29, 2026 17:32
@microsoft-github-policy-service microsoft-github-policy-service Bot added Packaging 3.0-dev PRs Destined for AzureLinux 3.0 labels Jun 29, 2026
Comment thread SPECS/openmpi/openmpi.spec Outdated
Requires: %{mpi_selector_rpm_name}
%endif
Requires: ucx
%if !%{build_all_in_one_rpm}

@ellie-di ellie-di Jun 29, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could we just get rid of the build_all_in_one_rpm (assuming we want several sub-package RPMs)?

@miz060 miz060 Jun 29, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good point. removed the build_all_in_one_rpm path

@miz060 miz060 changed the title fix(openmpi): restore split subpackages fix(openmpi): remove all-in-one packaging switch Jun 29, 2026
Always build OpenMPI as split runtime, devel, and docs RPMs. This
restores the local openmpi-devel package needed by the golden container
build.

Signed-off-by: Mitch Zhu <mitchzhu@microsoft.com>
@miz060 miz060 force-pushed the mitchzhu/fix-openmpi branch from 419450f to b60c5e5 Compare June 29, 2026 20:26
@miz060 miz060 changed the title fix(openmpi): remove all-in-one packaging switch fix(openmpi): restore runtime and devel subpackages Jun 29, 2026
@miz060 miz060 changed the title fix(openmpi): restore runtime and devel subpackages fix(openmpi): restore openmpi-devel subpackages Jun 29, 2026
Preserve the openmpi RPM while splitting devel and docs subpackages

Signed-off-by: Mitch Zhu <mitchzhu@microsoft.com>
@miz060 miz060 force-pushed the mitchzhu/fix-openmpi branch from 1abf9cd to 286a0e7 Compare June 30, 2026 05:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3.0-dev PRs Destined for AzureLinux 3.0 Packaging

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants