[rhoai-2.25] RHAIENG-6036: fix trustyai k8s papermill probe timing - #2487
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe StatefulSet liveness and readiness probes now wait longer before starting and run at longer intervals. Their endpoints, ports, schemes, and success/failure thresholds remain unchanged. ChangesStatefulSet probe timing
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
tests/containers/workbenches/jupyterlab/jupyterlab_datascience_test.py (1)
88-93: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueSkip guard for code-server images looks correct.
The dual-variant label check (
-code-server-for ODH,-codeserver-for RHOAI/RHDS Konflux) is well-documented and consistent with the pattern inconftest.py. The removal of the conditionalmysql-connector-pythoninstallation block is safe since code-server images now never reach that code path.As per coding guidelines, consider adding
@allure.issue("RHOAIENG-140")to link this test to the Jira issue referenced in the skip message.♻️ Optional: add allure issue decorator
+ `@allure.issue`("RHOAIENG-140") `@allure.description`("Check that mysql client functionality is working with SASL plain auth.") def test_mysql_connection(self, tf: TestFrame, datascience_image: Image, subtests):🤖 Prompt for 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. In `@tests/containers/workbenches/jupyterlab/jupyterlab_datascience_test.py` around lines 88 - 93, Add the `@allure.issue`("RHOAIENG-140") decorator to the affected JupyterLab datasource test function, alongside its existing test decorators, so the test is linked to the Jira issue referenced by the code-server skip guard.Source: Coding guidelines
🤖 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.
Nitpick comments:
In `@tests/containers/workbenches/jupyterlab/jupyterlab_datascience_test.py`:
- Around line 88-93: Add the `@allure.issue`("RHOAIENG-140") decorator to the
affected JupyterLab datasource test function, alongside its existing test
decorators, so the test is linked to the Jira issue referenced by the
code-server skip guard.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: a3c9f052-48ee-4f80-9bb9-264502e392f2
📥 Commits
Reviewing files that changed from the base of the PR and between ab66e21 and d8115e6f24b2c8a3241326ce7bda9f5f1c192db4.
📒 Files selected for processing (5)
jupyter/trustyai/ubi9-python-3.12/Dockerfile.cpujupyter/trustyai/ubi9-python-3.12/Dockerfile.konflux.cpujupyter/trustyai/ubi9-python-3.12/kustomize/base/statefulset.yamlscripts/check-payload/config.tomltests/containers/workbenches/jupyterlab/jupyterlab_datascience_test.py
d8115e6 to
06380e8
Compare
06380e8 to
293a861
Compare
|
this may not be actually necessary, maybe the timeouts were a rare flake? |
…torch Elyra/TrustyAI startup needs ~12s+ before Jupyter listens on 8888. Default liveness initialDelaySeconds: 5 causes CrashLoopBackOff in k8s papermill CI (make_test.py); pod never becomes Ready for kubectl exec. Set liveness/readiness to initialDelaySeconds: 15 and periodSeconds: 10 (matching jupyter/pytorch/ubi9-python-3.12/kustomize/base/statefulset.yaml on main). Not a trustyai main cherry-pick — trustyai statefulset on main still uses 5/10. Related: #2499 CI analysis, RHAIENG-6041 closed via #2451 (testcontainers). Co-authored-by: Cursor <cursoragent@cursor.com>
293a861 to
973cd54
Compare
CI status [antigravity]Run: Build Notebooks (push) #30348228985 — 1/1 complete · 1 skipped Workflow completed with skipped jobs. |
|
Rebased onto current TrustyAI kind flake: exit 137 / CrashLoop under aggressive probes ( Recent evidence:
Please approve + lgtm so we can land this flake fix. |
CI status [antigravity]Run: Build Notebooks (pr) #30348232918 — 2/2 passed All matrix jobs completed successfully. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: atheo89 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 |
Summary
Align TrustyAI StatefulSet health probes with pytorch (
15/10) so Elyra/Jupyter can finish starting before liveness kills the pod.Problem: On Build Notebooks k8s papermill (
make_test.py), the trustyai pod CrashLoopBackOffs: livenessinitialDelaySeconds: 5probes port 8888 before Jupyter listens (~12s+ with Elyra). Papermill then fails withcontainer not found ("notebook").Evidence: #2499 CI run 29087867712 — testcontainers 16 passed; k8s phase failed on probe kills (events captured in
make_test.pyfinally dumps).Fix:
jupyter/trustyai/ubi9-python-3.12/kustomize/base/statefulset.yamlonly:initialDelaySeconds5→15,periodSeconds5→10initialDelaySeconds10→15,periodSeconds5→10Matches
jupyter/pytorch/ubi9-python-3.12/kustomize/base/statefulset.yamlonmain. Not acherry-pick -xfrom main trustyai (trustyai statefulset on main still has 5/10).Out of scope (already fixed elsewhere)
/opt/app-root/share755:0 + spinnerTest plan
jupyter-trustyai-ubi9-python-3.12amd64 Build Notebooks: k8s papermill (make_test.py) passesLocal repro
k3s on
100.105.65.25: Quay trustyai image + #2499 branch — papermill passes with probe 15s patch (/tmp/test-trustyai-quay-k8s.log).Summary by CodeRabbit