Skip to content

[rhoai-2.25] RHAIENG-6036: skip PDF export on s390x and ppc64le via container_arch#2497

Merged
jiridanek merged 3 commits into
rhoai-2.25from
fix/rhoai-2.25-pdf-export-arch-skip
Jul 10, 2026
Merged

[rhoai-2.25] RHAIENG-6036: skip PDF export on s390x and ppc64le via container_arch#2497
jiridanek merged 3 commits into
rhoai-2.25from
fix/rhoai-2.25-pdf-export-arch-skip

Conversation

@jiridanek

@jiridanek jiridanek commented Jul 10, 2026

Copy link
Copy Markdown
Member

Summary

  • Add a container_arch session fixture (backported from ODH main #3472) that runs uname -m once per image under test.
  • Refactor test_pdf_export to skip on s390x and ppc64le using that fixture, matching main.
  • Remove the inline start/stop/uname dance that started a throwaway container before the real test container.

A full cherry-pick -x of opendatahub-io#3472 does not apply cleanly on rhoai-2.25 (12 files, BestEffortCleanup, fixture scoping changes, etc.). This PR carries only the PDF-export/arch-detection slice.

The skip reason is platform support, not “unreliable in CI”.

Test plan

  • pytest-tests / pre-commit green
  • jupyter-minimal-ubi9-python-3.12 ppc64le + s390x matrix jobs skip test_pdf_export instead of failing
  • amd64 test_pdf_export still runs

Follow-up

Drop the duplicate PDF-export hunk from #2488 once this merges.

Made with Cursor

Summary by CodeRabbit

  • Tests
    • Improved cross-platform container testing by detecting supported CPU architectures consistently.
    • PDF export checks now account for architectures where the feature is unavailable, reducing false failures during validation.
    • Enhanced test cleanup ensures temporary containers are stopped reliably after execution.

Backport the container_arch fixture approach from main (opendatahub-io#3472) instead of
starting a throwaway container inside test_pdf_export. PDF export is not
supported on these architectures; the skip is not a CI flake workaround.

(cherry picked from commit 3e4958b)
Co-authored-by: Cursor <cursoragent@cursor.com>
@openshift-ci
openshift-ci Bot requested review from daniellutz and dibryant July 10, 2026 10:30
@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@jiridanek, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 48 seconds

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 25d3897e-abd8-42f6-aaa6-9388a8c30715

📥 Commits

Reviewing files that changed from the base of the PR and between 8b500f9 and b0b7fc5.

📒 Files selected for processing (1)
  • tests/containers/conftest.py
📝 Walkthrough

Walkthrough

Changes

Container architecture testing

Layer / File(s) Summary
Session-scoped image and architecture fixtures
tests/containers/conftest.py
Image parametrization is explicitly session-scoped, and a fixture detects and validates the architecture of a running Docker container before stopping it.
Architecture-aware PDF export test
tests/containers/workbenches/jupyterlab/jupyterlab_test.py
The PDF export test uses the detected architecture and skips on s390x or ppc64le.

Estimated code review effort: 3 (Moderate) | ~15–30 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly states the main change: skipping PDF export on s390x and ppc64le via container_arch.
Description check ✅ Passed The PR body includes a clear summary, test plan, and follow-up, so it mostly matches the template despite missing checklist boxes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/rhoai-2.25-pdf-export-arch-skip

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…tainer_arch

Session-scoped container_arch depends on image; metafunc.parametrize
must pass scope="session" or pytest raises ScopeMismatch (pytest #634).

Co-authored-by: Cursor <cursoragent@cursor.com>
@ide-developer

Copy link
Copy Markdown
Collaborator

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Jul 10, 2026

Copy link
Copy Markdown
✅ Action performed

Full review finished.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@tests/containers/conftest.py`:
- Around line 61-68: Add a descriptive failure message to the `assert
image_option is not None` guard in the parametrization logic, clearly stating
that the `--image` option must be provided.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 23c775c0-2084-43f5-8745-a5befe9b5f93

📥 Commits

Reviewing files that changed from the base of the PR and between ba8d7dd and 8b500f9.

📒 Files selected for processing (2)
  • tests/containers/conftest.py
  • tests/containers/workbenches/jupyterlab/jupyterlab_test.py

Comment thread tests/containers/conftest.py
Co-authored-by: Cursor <cursoragent@cursor.com>
@openshift-ci

openshift-ci Bot commented Jul 10, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: ide-developer
Once this PR has been reviewed and has the lgtm label, please assign caponetto for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jiridanek
jiridanek merged commit 7344630 into rhoai-2.25 Jul 10, 2026
38 of 39 checks passed
@jiridanek
jiridanek deleted the fix/rhoai-2.25-pdf-export-arch-skip branch July 10, 2026 10:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants