METAL-1726: Multi-stage wheel-builder for OCP builds#786
METAL-1726: Multi-stage wheel-builder for OCP builds#786elfosardo wants to merge 3 commits intoopenshift:mainfrom
Conversation
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: elfosardo The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
@elfosardo: This pull request references METAL-1726 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.22.0" version, but no target version was set. DetailsIn response to this: Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
01fc180 to
afd0a0b
Compare
|
@elfosardo: This pull request references METAL-1726 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.22.0" version, but no target version was set. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/hold |
bc13812 to
fc5d725
Compare
|
/test ci/prow/e2e-metal-ipi-ovn-ipv6 |
|
@elfosardo: The specified target(s) for The following commands are available to trigger optional jobs: Use DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
/test pull-ci-openshift-ironic-image-main-e2e-metal-ipi-ovn-ipv6 |
|
@elfosardo: The specified target(s) for The following commands are available to trigger optional jobs: Use DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
Cherry-pick of upstream b126df6 adapted for downstream: - Kept build-wheels.sh - Removed Dockerfile (downstream uses Dockerfile.ocp) - Removed ironic-deps-list (downstream uses requirements.cachito) - Removed ironic-packages-list changes (not used downstream) - Kept downstream prepare-image.sh (will be adapted separately) Upstream commit: b126df6 (Add wheel-builder stages to pre-build Python packages)
Cherry-pick of upstream 9127708 adapted for downstream: - Removed upstream Dockerfile (downstream uses Dockerfile.ocp) - Applied heredoc syntax consolidation to Dockerfile.ocp - Converted multi-line && chains to heredoc RUN blocks Upstream commit: 9127708 (Consolidate first stage plus more heredoc syntax)
Adapt the upstream multi-stage build approach (b126df6) for the downstream cachito pipeline in Dockerfile.ocp: - Add wheel-builder stage that installs build dependencies, copies cachito sources, and builds Python wheels - Final image mounts pre-built wheels and installs them without requiring build dependencies (gcc, python3.12-devel, etc.) - Extract cachito wheel-building logic from prepare-image.sh into build-wheels-ocp.sh - Simplify prepare-image.sh OCP block to install from pre-built wheels instead of compiling from source Benefits: - Build dependencies never exist in the final image - Cleaner separation between compilation and runtime - Improved build caching when package list doesn't change Assisted-By: Claude 4.6 Opus High
fc5d725 to
f3a994f
Compare
|
/unhold |
|
@elfosardo: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Adapt the upstream multi-stage build approach (b126df6) for the
downstream cachito pipeline in Dockerfile.ocp:
copies cachito sources, and builds Python wheels
requiring build dependencies (gcc, python3.12-devel, etc.)
into build-wheels-ocp.sh
wheels instead of compiling from source
Benefits:
Assisted-By: Claude 4.6 Opus High