Skip to content

Add RHOBS log collection to ROSA CI workflows - #83560

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
redhat-chai-bot:add-rosa-rhobs-log-gather
Aug 17, 2026
Merged

Add RHOBS log collection to ROSA CI workflows#83560
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
redhat-chai-bot:add-rosa-rhobs-log-gather

Conversation

@redhat-chai-bot

@redhat-chai-bot redhat-chai-bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Summary

Add RHOBS log collection (CS provisioning logs from RHOBS Loki) to three ROSA CI workflows that are currently missing it. This enables backend visibility into cluster install stall failures — specifically the OCM-to-Hive handoff failures tracked in ROSAENG-65470.

Problem

ROSA STS Classic e2e jobs (e.g. e2e-rosa-sts-ovn) have a ~33% pass rate over the last 7 days, with ~65-70% of failures caused by cluster install stalls where:

  • The cluster gets stuck in installing state for 60+ minutes
  • infra_id remains null — Hive never creates the ClusterDeployment
  • The install log is empty ("waiting for installation to begin")
  • No provision_error_code or status description from OCM

The root cause investigation requires OCM cluster-service logs showing why the handoff to Hive failed, but these logs are not collected by the current CI workflows.

Solution

The rosa-gather-rhobs-logs step already exists in the step registry and can collect CS provisioning logs via the RHOBS Loki API. It queries the uhc-stage namespace for log lines mentioning the cluster ID. However, it was only wired into the rosa-e2e-hcp workflow, not the STS Classic or HCP conformance workflows.

This PR adds the gather step as a best_effort: true post step (first in the post chain, before deprovision) to three workflows:

  • rosa-aws-sts-conformance — adds ref: rosa-gather-rhobs-logs
  • rosa-aws-sts-byo-kms-oidc — adds ref: rosa-gather-rhobs-logs
  • rosa-aws-hcp-conformance — adds chain: rosa-gather-hcp-diagnostics (wraps rosa-gather-rhobs-logs plus MC-side log collection)

Impact

  • Future install-stall failures will have CS provisioning logs in the job artifacts
  • best_effort: true ensures the gather step does not fail the job if RHOBS credentials are missing or the query errors
  • The gather step gracefully handles missing MC_CLUSTER_ID for Classic clusters (skips MC-side logs, collects CS logs only)
  • No changes to env vars, test steps, or deprovision steps

AI-generated. Review for accuracy.

@dustman9000 requested in Slack thread

Summary by CodeRabbit

  • Adds RHOBS log collection to three ROSA CI workflows.
  • Collects cluster-service provisioning logs before cluster deprovisioning.
  • Uses best-effort gathering so log collection failures do not fail jobs.
  • Adds HCP diagnostics for RHOBS and Machine Controller logs.
  • Supports investigation of cluster installation stalls, including OCM-to-Hive handoff failures.

Wire rosa-gather-rhobs-logs as a best_effort post step to the
rosa-aws-sts-conformance and rosa-aws-sts-byo-kms-oidc workflows,
and rosa-gather-hcp-diagnostics (which includes MC-side log
collection) to the rosa-aws-hcp-conformance workflow.

The gather steps are placed as the first post step in each workflow
so the cluster is still available when logs are collected. Using
best_effort: true ensures that a failure in log gathering does not
fail the overall job.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 2d33a9af-d6d2-4e7d-990e-c69ba78a6505

📥 Commits

Reviewing files that changed from the base of the PR and between cee0b7e and f711e98.

📒 Files selected for processing (3)
  • ci-operator/step-registry/rosa/aws/hcp/conformance/rosa-aws-hcp-conformance-workflow.yaml
  • ci-operator/step-registry/rosa/aws/sts/byo-kms-oidc/rosa-aws-sts-byo-kms-oidc-workflow.yaml
  • ci-operator/step-registry/rosa/aws/sts/conformance/rosa-aws-sts-conformance-workflow.yaml

Included review availability: Your plan includes up to 2 reviews per rolling hour; 0 remain after this review.


Walkthrough

Three ROSA workflow definitions now run best-effort post steps to collect HCP diagnostics or RHOBS logs.

Changes

ROSA post-processing

Layer / File(s) Summary
Add best-effort diagnostic collection
ci-operator/step-registry/rosa/aws/hcp/conformance/..., ci-operator/step-registry/rosa/aws/sts/...
The HCP conformance workflow gathers diagnostics. The STS workflows gather RHOBS logs. Each post step is configured as best effort.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Merge Risk: ⚪ Minimal · up to f711e

This PR adds best-effort RHOBS log collection to three ROSA CI workflows without changing test, environment, or deprovision behavior; no actionable merge-blocking risk remains after normal checks and review.

Suggested reviewers: dustman9000


Important

Pre-merge checks failed

Please resolve all errors before merging. Addressing warnings is optional.

❌ Failed checks (1 error)

Check name Status Explanation Resolution
No-Sensitive-Data-In-Logs ❌ Error The new post steps activate RHOBS collection that writes unredacted MC and CS logs to artifacts; it filters only time/Vault lines, so internal hostnames or customer data may be exposed. Redact secrets, tokens, identifiers, hostnames, and customer data before writing RHOBS logs to artifacts, or restrict collection to sanitized records.
✅ Passed checks (14 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: adding RHOBS log collection to three ROSA CI workflows.
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.
Stable And Deterministic Test Names ✅ Passed The PR changes only three YAML workflow post-step lists; it adds no Ginkgo test titles or dynamic values to test names.
Test Structure And Quality ✅ Passed The diff changes only three workflow YAML files and adds existing post-step references; it introduces no Ginkgo It blocks, setup, waits, or assertions to assess.
Microshift Test Compatibility ✅ Passed The commit changes only three workflow YAML files by adding post-step log-gathering references; it adds no Ginkgo tests or test API/resource usage.
Single Node Openshift (Sno) Test Compatibility ✅ Passed The PR diff changes only three YAML workflow files, adds gather-step references, and introduces no Ginkgo tests or multi-node test assumptions.
Topology-Aware Scheduling Compatibility ✅ Passed The diff only adds best-effort post-step references to existing log-gathering steps; changed workflows introduce no scheduling constraints or deployment/operator/controller changes.
Ote Binary Stdout Contract ✅ Passed The HEAD diff changes only three YAML workflow post-step lists; it adds no OTE binary code or process-level stdout writes.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The diff changes only three workflow YAML post-step lists; it adds no Ginkgo e2e tests or IPv4/external-connectivity test behavior.
No-Weak-Crypto ✅ Passed The PR adds only workflow references and best-effort flags; added lines contain no prohibited algorithms, and the referenced RHOBS implementation is unchanged.
Container-Privileges ✅ Passed The PR adds only post-step references and best_effort flags. The referenced definitions are unchanged and contain no privileged, host namespace, SYS_ADMIN, root, or privilege-escalation settings.
✨ 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.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@redhat-chai-bot: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
periodic-ci-openshift-operator-framework-operator-controller-release-4.23-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.20-e2e-rosa-hcp-ovn N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.19-e2e-rosa-sts-ovn N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-4.23-periodics-e2e-rosa-sts-ovn-slow-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.18-e2e-rosa-sts-ovn N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-olm-release-5.0-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.21-e2e-rosa-sts-ovn N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-olm-release-4.21-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-5.0-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.22-e2e-rosa-hcp-ovn N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-4.22-periodics-e2e-rosa-sts-ovn-slow-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-olm-release-5.1-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-5.1-e2e-rosa-hcp-ovn N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-4.22-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-5.1-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.22-e2e-rosa-sts-ovn N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-5.0-e2e-rosa-hcp-ovn N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-olm-release-4.23-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-5.0-periodics-e2e-rosa-sts-ovn-slow-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-4.21-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-olm-release-4.22-periodics-e2e-rosa-sts-ovn-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-operator-framework-operator-controller-release-5.1-periodics-e2e-rosa-sts-ovn-slow-extended-f3 N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.21-e2e-rosa-hcp-ovn N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.19-e2e-rosa-hcp-ovn N/A periodic Registry content changed
periodic-ci-openshift-release-main-nightly-4.20-e2e-rosa-sts-ovn N/A periodic Registry content changed

A total of 26 jobs have been affected by this change. The above listing is non-exhaustive and limited to 25 jobs.

A full list of affected jobs can be found here
Prior to this PR being merged, you will need to either run and acknowledge or opt to skip these rehearsals.

Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@dustman9000

Copy link
Copy Markdown
Member

/lgtm
/approve
/pj-rehearse ack

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@dustman9000: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Aug 17, 2026
@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Aug 17, 2026
@openshift-ci

openshift-ci Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: dustman9000, redhat-chai-bot

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

The pull request process is described 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

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 17, 2026
@openshift-ci

openshift-ci Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

@redhat-chai-bot: all tests passed!

Full PR test history. Your PR dashboard.

Details

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. I understand the commands that are listed here.

@openshift-merge-bot
openshift-merge-bot Bot merged commit ec45dbd into openshift:main Aug 17, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged. rehearsals-ack Signifies that rehearsal jobs have been acknowledged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants