Skip to content

Embed MLflow run ID in dashboard CSV and Slack notifications - #2 - #153

Merged
kpouget merged 27 commits into
openshift-psap:mainfrom
Harshith-umesh:mlflow-url-in-csv
Aug 6, 2026
Merged

Embed MLflow run ID in dashboard CSV and Slack notifications - #2#153
kpouget merged 27 commits into
openshift-psap:mainfrom
Harshith-umesh:mlflow-url-in-csv

Conversation

@Harshith-umesh

@Harshith-umesh Harshith-umesh commented Jul 31, 2026

Copy link
Copy Markdown
Member

Summary

Pre-creates the MLflow run during the test step so its run_id and experiment_id are available before CSV generation. The export step resumes this run instead of creating a new one, ensuring the dashboard CSV and Slack notifications link to the correct MLflow entry.

Changes

  • Pre-create MLflow run (test_phase.py): New _precreate_mlflow_run() helper creates an MLflow run early in the test phase, capturing run_id and experiment_id. Sets MLFLOW_WORKSPACE and FJOB_NAME to match the export step's context. Writes a marker file (__mlflow_precreated_run__.yaml) for cross-step persistence.

  • Resume pre-created run on export (export.py, mlflow_backend.py): _discover_precreated_mlflow_run_id() looks for the marker file first, then falls back to reading mlflow_run_id from __test_labels__.yaml (already discovered by the export step). Both log_artifacts() and log_multi_run_artifacts() now pass run_name alongside run_id so the run name is set correctly on resume.

  • Dashboard CSV (csv_export.py, plugin.py): Added mlflow_run_id and mlflow_experiment_id columns to FIELDNAMES and _extract_row(). The postprocess plugin maps these from test labels into CSV rows.

  • Slack notifications (regression.py): New _build_mlflow_run_url() constructs the MLflow URL at runtime from vault secrets (tracking URI) and config (run ID, experiment ID, workspace). Both regression and failure notifications include a clickable MLflow link.

Test plan

  • Run a full pipeline (forge-full) and verify:
    • Dashboard CSV contains correct mlflow_run_id and mlflow_experiment_id
    • Dashboard-generated MLflow URL matches the actual MLflow run URL
    • MLflow run name matches FJOB_NAME (not auto-generated)
    • Slack notification includes a working MLflow link
  • Verify pd.concat handles schema evolution (old CSV rows get NaN for new columns)
  • Verify no secrets are persisted to artifacts (tracking URI is fetched from vault at runtime)

Summary by CodeRabbit

  • New Features
    • Added support for pre-created MLflow runs during benchmarking and artifact exports.
    • MLflow run and experiment links can now appear in regression, failure, and success notifications.
    • Dashboard CSV exports now include MLflow run and experiment identifiers.
    • Added optional success notifications for completed analyses, including workload, cluster, version, and dashboard details.
  • Bug Fixes
    • Improved MLflow run naming and identifier handling for single- and multi-run exports.
    • Notifications now consistently use configured Slack recipients and optional notification settings.

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jul 31, 2026
@openshift-ci

openshift-ci Bot commented Jul 31, 2026

Copy link
Copy Markdown

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The change pre-creates and propagates MLflow run metadata through RHAIIS benchmarks, exports, CSV output, and Slack notifications. It also adds MLflow URL generation, configurable success notifications, public Caliper secret utilities, and ignore rules for generated files.

Changes

MLflow reporting flow

Layer / File(s) Summary
Pre-created run lifecycle
projects/caliper/public/*, projects/caliper/orchestration/export.py, projects/rhaiis/orchestration/test_phase.py, projects/caliper/engine/file_export/*
Pre-created MLflow runs are written to markers, discovered during export, passed to single-run and multi-run exports, and used with explicit run names.
Benchmark metadata propagation
projects/rhaiis/postprocess/csv_export.py, projects/rhaiis/postprocess/plugin.py
Dashboard CSV output defines MLflow run and experiment columns and populates them from KPI labels.
Notification and regression reporting
projects/rhaiis/postprocess/regression.py, projects/rhaiis/orchestration/analysis.py, projects/rhaiis/orchestration/test_phase.py, projects/rhaiis/orchestration/config.yaml
Regression and failure messages include MLflow links. Optional success messages include benchmark metadata and are controlled by slack_notify_always.

Configuration hygiene

Layer / File(s) Summary
Generated launcher file exclusions
.gitignore
The launcher configuration ignore section excludes Fournos job YAML files and kubeconfig files.

Estimated code review effort: 4 (Complex) | ~45 minutes

Sequence Diagram(s)

sequenceDiagram
  participant TestPhase
  participant MLflow
  participant Marker
  participant Export
  participant Slack
  TestPhase->>MLflow: precreate and finish run
  TestPhase->>Marker: store run and experiment IDs
  Export->>Marker: discover run ID
  Export->>MLflow: export artifacts with run ID
  TestPhase->>Slack: send success or regression notification with MLflow link
Loading

Possibly related PRs

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 61.54% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the main user-visible changes: adding the MLflow run ID to dashboard CSV output and Slack notifications.
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

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.

Comment thread projects/rhaiis/orchestration/test_phase.py Outdated
Comment thread projects/rhaiis/orchestration/test_phase.py Outdated
Comment thread projects/rhaiis/orchestration/test_phase.py Outdated
Comment thread projects/rhaiis/postprocess/regression.py
Comment thread .gitignore Outdated
Comment thread projects/caliper/orchestration/export.py Outdated
@Harshith-umesh
Harshith-umesh marked this pull request as ready for review August 3, 2026 15:41
@openshift-ci openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 3, 2026

@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: 3

🧹 Nitpick comments (2)
projects/rhaiis/orchestration/test_phase.py (1)

622-667: 🎯 Functional Correctness | 🔵 Trivial

Duplicate success-notification setup vs. run_regression_check.

When compare_version/version are both set, run_regression_check() (in analysis.py) handles the no-regression case internally and already sends a success notification with the same model/accelerator/tp/dp/slack_user computation. When they are not both set, this block (lines 644-667) re-implements the identical model/accelerator/engine-args/tp/dp lookup and calls send_success_notification again. See consolidated comment for the shared fix.

🤖 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 `@projects/rhaiis/orchestration/test_phase.py` around lines 622 - 667, The
success-notification setup is duplicated between the compare-version path and
the unconditional slack-notification block. Consolidate the shared model,
accelerator, engine-args, tensor/data-parallel, and notification behavior around
run_regression_check and send_success_notification so the no-regression path
cannot send duplicate notifications while preserving notifications when
comparison is not requested.
projects/rhaiis/orchestration/analysis.py (1)

168-172: 🎯 Functional Correctness | 🔵 Trivial

Duplicate success-notification setup vs. _sync_postprocessed_dashboard_csv.

This branch (lines 200-214) computes tp/dp/slack_user and calls send_success_notification with the same shape of arguments used in test_phase.py's _sync_postprocessed_dashboard_csv. See consolidated comment for the shared fix.

Also applies to: 189-214

🤖 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 `@projects/rhaiis/orchestration/analysis.py` around lines 168 - 172, Remove the
duplicated tensor/data parallel argument and Slack-user setup from the branch
around send_success_notification, and reuse the existing shared notification
logic used by _sync_postprocessed_dashboard_csv. Preserve the current argument
values and success-notification behavior while centralizing construction of the
notification inputs in one helper or shared path.
🤖 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 `@projects/caliper/engine/file_export/mlflow_backend.py`:
- Around line 416-420: Update log_artifacts() and log_multi_run_artifacts() so
that when resuming with run_id and a resolved run_name, they set the
mlflow.runName tag inside the active MLflow run context before applying other
metadata. Preserve the existing start_kw handling and apply this behavior
consistently in both artifact logging paths.

In `@projects/caliper/orchestration/export.py`:
- Around line 364-403: Update build_mlflow_run_url() to validate tracking_uri
with the existing assert_tracking_uri_has_no_userinfo() guard before composing
the Slack-visible URL, preserving the current empty-string fallback when
validation fails. Do not log or include the URI or any validation error details,
and leave the scheme check and URL construction unchanged for valid
credential-free URIs.
- Around line 267-335: Ensure the MLflow workspace restoration around
precreate_mlflow_run is executed in a finally block, including when
mlflow.set_tracking_uri, mlflow.set_experiment, mlflow.start_run, or another
operation inside the connection context raises. Keep the existing restoration
behavior for both previously set and unset MLFLOW_WORKSPACE values, while
preserving the function’s current return and logging flow on success.

---

Nitpick comments:
In `@projects/rhaiis/orchestration/analysis.py`:
- Around line 168-172: Remove the duplicated tensor/data parallel argument and
Slack-user setup from the branch around send_success_notification, and reuse the
existing shared notification logic used by _sync_postprocessed_dashboard_csv.
Preserve the current argument values and success-notification behavior while
centralizing construction of the notification inputs in one helper or shared
path.

In `@projects/rhaiis/orchestration/test_phase.py`:
- Around line 622-667: The success-notification setup is duplicated between the
compare-version path and the unconditional slack-notification block. Consolidate
the shared model, accelerator, engine-args, tensor/data-parallel, and
notification behavior around run_regression_check and send_success_notification
so the no-regression path cannot send duplicate notifications while preserving
notifications when comparison is not requested.
🪄 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: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: bf88813e-4411-4f6b-b653-01f70cb71772

📥 Commits

Reviewing files that changed from the base of the PR and between cd8c7c8 and 0616bac.

📒 Files selected for processing (10)
  • .gitignore
  • projects/caliper/engine/file_export/mlflow_backend.py
  • projects/caliper/orchestration/export.py
  • projects/rhaiis/orchestration/analysis.py
  • projects/rhaiis/orchestration/config.d/rhaiis.yaml
  • projects/rhaiis/orchestration/config.yaml
  • projects/rhaiis/orchestration/test_phase.py
  • projects/rhaiis/postprocess/csv_export.py
  • projects/rhaiis/postprocess/plugin.py
  • projects/rhaiis/postprocess/regression.py

Comment thread projects/caliper/engine/file_export/mlflow_backend.py
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py Outdated
@kpouget

kpouget commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

@Harshith-umesh #155 has been merged, so you can rebase on top of main?

@openshift-ci openshift-ci Bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 4, 2026
@openshift-ci openshift-ci Bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 4, 2026

@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: 3

🤖 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 `@projects/caliper/orchestration/export.py`:
- Around line 405-406: Update the URL construction near the tracking URI return
to URL-encode the workspace value before inserting it into the query string,
preserving the existing omission of the query parameter when workspace is empty.
Use the module’s existing URL-encoding utility or import the standard
query-string encoder rather than interpolating the raw workspace value.
- Around line 295-300: Update run_from_orchestration_config() to resolve and
load the file-based backend.mlflow.config YAML before looking up experiment and
workspace or creating the run. Ensure both inline mappings and YAML paths
populate the existing experiment and workspace settings consistently for resumed
runs.
- Around line 312-331: Update the MLflow run setup around
mlflow.set_tracking_uri to capture the current tracking URI before applying
tracking_uri, then restore that saved URI in the existing finally block
alongside MLFLOW_WORKSPACE restoration. Preserve the current behavior when no
tracking_uri is 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: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 6fcd1721-fbce-4f74-8fad-230aecc26972

📥 Commits

Reviewing files that changed from the base of the PR and between a38dd81 and d9f651f.

📒 Files selected for processing (12)
  • .gitignore
  • projects/caliper/engine/file_export/artifacts_export_run.py
  • projects/caliper/engine/file_export/mlflow_backend.py
  • projects/caliper/orchestration/export.py
  • projects/rhaiis/orchestration/analysis.py
  • projects/rhaiis/orchestration/config.d/rhaiis.yaml
  • projects/rhaiis/orchestration/config.d/workloads.yaml
  • projects/rhaiis/orchestration/config.yaml
  • projects/rhaiis/orchestration/test_phase.py
  • projects/rhaiis/postprocess/csv_export.py
  • projects/rhaiis/postprocess/plugin.py
  • projects/rhaiis/postprocess/regression.py
🚧 Files skipped from review as they are similar to previous changes (9)
  • projects/rhaiis/postprocess/plugin.py
  • projects/rhaiis/postprocess/regression.py
  • projects/caliper/engine/file_export/mlflow_backend.py
  • projects/rhaiis/orchestration/config.d/rhaiis.yaml
  • projects/rhaiis/orchestration/analysis.py
  • .gitignore
  • projects/rhaiis/orchestration/config.yaml
  • projects/rhaiis/orchestration/test_phase.py
  • projects/rhaiis/postprocess/csv_export.py

Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/caliper/orchestration/export.py Outdated
Comment thread projects/rhaiis/orchestration/config.d/rhaiis.yaml
Comment thread projects/rhaiis/orchestration/config.d/workloads.yaml
Comment thread projects/rhaiis/orchestration/analysis.py
Comment thread projects/rhaiis/orchestration/test_phase.py Outdated
Comment thread .gitignore Outdated
…k notifications

Pre-create the MLflow run during the test step (before CSV generation)
so the run_id and experiment_id are available for:
- Dashboard CSV columns (mlflow_run_id, mlflow_experiment_id)
- Slack notifications (MLflow run URL constructed at runtime from vault)

The export step resumes the pre-created run instead of creating a new one,
via the existing run_id parameter on both single-run and multi-run paths.

Co-authored-by: Cursor <cursoragent@cursor.com>
Comment thread projects/rhaiis/orchestration/test_phase.py Outdated
Harshith-umesh and others added 3 commits August 6, 2026 11:16
…quires

- Use @requires decorator for config access, matching mlflow_verifier pattern
- Return full mlflow_destination dict (run_id, experiment_id, workspace)
- Remove function from rhaiis test_phase.py; import from caliper
- Mark mlflow_destination and experiment_id as optional in docs

Co-authored-by: Cursor <cursoragent@cursor.com>
@Harshith-umesh

Copy link
Copy Markdown
Member Author

/test fournos rhaiis nvidia benchmark hera ci-quick
/pipeline forge-full
/exclusive false
/cluster hera
/var caliper.postprocess.csv_dashboard.enabled: true

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown

🟢 Execution of rhaiis nvidia benchmark hera ci-quick 🟢

Execution Engine Configuration

forge:
  args:
  - nvidia
  - benchmark
  - hera
  - ci-quick
  configOverrides:
    caliper.postprocess.csv_dashboard.enabled: true
  project: rhaiis

Artifact Links

Test Logs

00 Pre-Cleanup 1 second

01 Prepare 3 seconds

02 Preflight 1 second

03 Test 5 minutes, 20 seconds

04 Post-Cleanup 4 seconds

🔄 05 Export-Artifacts

Post-processing Status

  • parse: success
  • artifacts_to_kpis: success
  • kpis_to_mlflow: success
  • kpis_to_csv: success
  • ⏭️ artifacts_to_ai_data: disabled

    kpi.artifacts_to_ai_data disabled

  • ⏭️ s3_import: disabled

    s3_import disabled

  • ⏭️ analyse_kpis: disabled

    analyze disabled

  • ⏭️ s3_export: disabled

    s3_export disabled

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown
🟢 Submission of rhaiis nvidia benchmark hera ci-quick succeeded after 8 minutes, 9 seconds 🟢
/test fournos rhaiis nvidia benchmark hera ci-quick
/var caliper.postprocess.csv_dashboard.enabled: true
/pipeline forge-full
/exclusive false
/cluster hera

The KPI run_path points deep inside the benchmark results, several
levels below where __test_labels__.yaml is written. Walk up from
run_path instead of only checking the immediate parent.

Co-authored-by: Cursor <cursoragent@cursor.com>
@Harshith-umesh

Copy link
Copy Markdown
Member Author

/test fournos rhaiis nvidia benchmark hera ci-quick
/var caliper.postprocess.csv_dashboard.enabled: true
/pipeline forge-full
/exclusive false
/cluster hera

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown

🟢 Execution of rhaiis nvidia benchmark hera ci-quick 🟢

Execution Engine Configuration

forge:
  args:
  - nvidia
  - benchmark
  - hera
  - ci-quick
  configOverrides:
    caliper.postprocess.csv_dashboard.enabled: true
  project: rhaiis

Artifact Links

Test Logs

00 Pre-Cleanup 1 second

01 Prepare 2 seconds

02 Preflight 1 second

03 Test 5 minutes, 18 seconds

04 Post-Cleanup 4 seconds

🔄 05 Export-Artifacts

Post-processing Status

  • parse: success
  • artifacts_to_kpis: success
  • kpis_to_mlflow: success
  • kpis_to_csv: success
  • ⏭️ artifacts_to_ai_data: disabled

    kpi.artifacts_to_ai_data disabled

  • ⏭️ s3_import: disabled

    s3_import disabled

  • ⏭️ analyse_kpis: disabled

    analyze disabled

  • ⏭️ s3_export: disabled

    s3_export disabled

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown
🟢 Submission of rhaiis nvidia benchmark hera ci-quick succeeded after 9 minutes, 21 seconds 🟢
/test fournos rhaiis nvidia benchmark hera ci-quick
/var caliper.postprocess.csv_dashboard.enabled: true
/pipeline forge-full
/exclusive false
/cluster hera

run_path in KPI records is relative, so the CSV plugin subprocess
cannot resolve __test_labels__.yaml on disk. Instead, extract
mlflow_destination from test nodes during compute_kpis and include
mlflow_run_id/mlflow_experiment_id in KPI record labels.

Co-authored-by: Cursor <cursoragent@cursor.com>
@Harshith-umesh

Copy link
Copy Markdown
Member Author

/test fournos rhaiis nvidia benchmark hera ci-quick
/var caliper.postprocess.csv_dashboard.enabled: true
/pipeline forge-full
/exclusive false
/cluster hera

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown

🟢 Execution of rhaiis nvidia benchmark hera ci-quick 🟢

Execution Engine Configuration

forge:
  args:
  - nvidia
  - benchmark
  - hera
  - ci-quick
  configOverrides:
    caliper.postprocess.csv_dashboard.enabled: true
  project: rhaiis

Artifact Links

Test Logs

00 Pre-Cleanup 1 second

01 Prepare 2 seconds

02 Preflight 1 second

03 Test 5 minutes, 8 seconds

04 Post-Cleanup 4 seconds

🔄 05 Export-Artifacts

Post-processing Status

  • parse: success
  • artifacts_to_kpis: success
  • kpis_to_mlflow: success
  • kpis_to_csv: success
  • ⏭️ artifacts_to_ai_data: disabled

    kpi.artifacts_to_ai_data disabled

  • ⏭️ s3_import: disabled

    s3_import disabled

  • ⏭️ analyse_kpis: disabled

    analyze disabled

  • ⏭️ s3_export: disabled

    s3_export disabled

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown
🟢 Submission of rhaiis nvidia benchmark hera ci-quick succeeded after 8 minutes, 8 seconds 🟢
/test fournos rhaiis nvidia benchmark hera ci-quick
/var caliper.postprocess.csv_dashboard.enabled: true
/pipeline forge-full
/exclusive false
/cluster hera

@kpouget

kpouget commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Aug 6, 2026
The config-aware wrapper only uses caliper config keys, so it belongs
in caliper/orchestration/export.py where all projects can reuse it.
regression.py now imports and calls build_mlflow_run_url_from_config().

Co-authored-by: Cursor <cursoragent@cursor.com>
@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Aug 6, 2026
@openshift-ci

openshift-ci Bot commented Aug 6, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please ask for approval from kpouget. 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

@Harshith-umesh

Copy link
Copy Markdown
Member Author

/test fournos rhaiis nvidia benchmark hera ci-quick
/var caliper.postprocess.csv_dashboard.enabled: true
/pipeline forge-full
/exclusive false
/cluster hera

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown

🟢 Execution of rhaiis nvidia benchmark hera ci-quick 🟢

Execution Engine Configuration

forge:
  args:
  - nvidia
  - benchmark
  - hera
  - ci-quick
  configOverrides:
    caliper.postprocess.csv_dashboard.enabled: true
  project: rhaiis

Artifact Links

Test Logs

00 Pre-Cleanup 1 second

01 Prepare 3 seconds

02 Preflight 1 second

03 Test 5 minutes, 12 seconds

04 Post-Cleanup 5 seconds

🔄 05 Export-Artifacts

Post-processing Status

  • parse: success
  • artifacts_to_kpis: success
  • kpis_to_mlflow: success
  • kpis_to_csv: success
  • ⏭️ artifacts_to_ai_data: disabled

    kpi.artifacts_to_ai_data disabled

  • ⏭️ s3_import: disabled

    s3_import disabled

  • ⏭️ analyse_kpis: disabled

    analyze disabled

  • ⏭️ s3_export: disabled

    s3_export disabled

@psap-forge-bot

psap-forge-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown
🟢 Submission of rhaiis nvidia benchmark hera ci-quick succeeded after 9 minutes, 23 seconds 🟢
/test fournos rhaiis nvidia benchmark hera ci-quick
/var caliper.postprocess.csv_dashboard.enabled: true
/pipeline forge-full
/exclusive false
/cluster hera

@kpouget

kpouget commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Aug 6, 2026
@Harshith-umesh

Copy link
Copy Markdown
Member Author

/approved

@kpouget
kpouget enabled auto-merge August 6, 2026 20:54
@kpouget
kpouget disabled auto-merge August 6, 2026 21:19
@kpouget
kpouget merged commit 81f12ef into openshift-psap:main Aug 6, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants