Skip to content

USHIFT-7221: Automate Polarion test: Verify sosreport can be consumed by omg & omc support tools#6991

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
agullon:USHIFT-7221
Jul 10, 2026
Merged

USHIFT-7221: Automate Polarion test: Verify sosreport can be consumed by omg & omc support tools#6991
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
agullon:USHIFT-7221

Conversation

@agullon

@agullon agullon commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Summary

Automate Polarion test case OCP-61971: verify that MicroShift sosreport
output is compatible with the omc and
omg support tools.

What changed

  • New test: test/suites/otp-workloads/sos-report-support-tools.robot
    — generates a sosreport on the MicroShift host, downloads the
    sos_commands/microshift directory locally via SCP, and runs both omc
    and omg against it to verify they can list pods, nodes, projects, and
    retrieve container logs.

  • New shared resource: test/resources/sos-report.resource — extracts
    Create Sos Report, Extract Sos Report, and Cleanup Sos Report Directory keywords from sos-report-plugins.robot so both suites can
    reuse them.

  • Tool management via fetch_tools.sh: adds gettool_omc (pinned
    v3.15.0 with SHA256 checksum) and gettool_omg (pinned v1.2.6 in a
    dedicated Python venv). Both tools run on the test runner host, not on
    the MicroShift cluster.

  • Scenario registration: the new test is added to all three
    otp-workloads scenarios (el98 ostree, el98 bootc, el102 bootc), each
    calling fetch_tools.sh omc omg before run_tests.

Design decisions

  • Tools run locally against downloaded sosreport data rather than
    being installed on the cluster. This avoids modifying the remote host
    and sidesteps read-only filesystem issues on bootc/ostree deployments.
  • Only sos_commands/microshift is downloaded (not the full sosreport)
    to minimize SCP transfer time.
  • The _install helper is not used for omc on aarch64 because its
    --wildcards "*/omc" pattern does not match root-level entries in
    GoReleaser tarballs. The aarch64 path does manual download, checksum
    verification, and extraction instead.

Test plan

  • Both test cases pass against a live MicroShift cluster (cluster-bot)
  • robocop check and robocop format --check pass
  • shellcheck passes on all modified shell scripts
  • CI validation via otp-workloads scenarios

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jul 6, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 6, 2026

Copy link
Copy Markdown

@agullon: This pull request references USHIFT-7221 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 task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

  • Add Robot Framework test (OCP-61971) verifying MicroShift sosreport output can be consumed by omc and omg support tools
  • Extract shared SOS report keywords into test/resources/sos-report.resource to eliminate duplication between test suites
  • Add the new test to all three otp-workloads scenarios (el98 ostree, el98 bootc, el102 bootc)

Test Details

The test generates a sosreport, installs both tools on the remote host, and validates:

  • omc: use, get pods -A, get nodes, logs -c <container>, project
  • omg: use, project, get pods -A, get node --show-labels, get node -o wide, get pods -A -o json, logs -c <container>, projects

Tools are installed per-test (omc as a GitHub release binary, omg via pip in a venv) and cleaned up in teardown.

Test plan

  • Verified both test cases pass against a live MicroShift cluster (cluster-bot)
  • robotidy formatting validated
  • shellcheck passed on modified scenario scripts
  • CI validation via otp-workloads scenarios

🤖 Generated with Claude Code

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.

@coderabbitai

coderabbitai Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

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

Extracts SOS report keywords into a shared Robot Framework resource, refactors an existing suite to reuse them, adds a new suite testing omc/omg consumption of SOS reports, adds omc/omg installers to fetch_tools.sh, and updates scenario scripts to fetch these tools and run the new suite.

Changes

SOS Report Tooling and Testing

Layer / File(s) Summary
Shared SOS report resource keywords
test/resources/sos-report.resource
Adds keywords to create, create-with-profile, extract, and clean up SOS reports for reuse across suites.
Refactor existing suite to use shared resource
test/suites/otp-workloads/sos-report-plugins.robot
Imports the new resource and removes duplicate local keyword definitions.
omc/omg tool fetchers
scripts/fetch_tools.sh
Adds gettool_omc and gettool_omg functions to install the omc binary and o-must-gather via a venv.
New sos-report-support-tools.robot suite
test/suites/otp-workloads/sos-report-support-tools.robot
Adds setup/teardown and two test cases plus helper keywords verifying omc and omg can consume a downloaded SOS report.
Wire fetch_tools and new suite into scenarios
test/scenarios-bootc/el10/releases/el102-lrel@otp-workloads.sh, test/scenarios-bootc/el9/releases/el98-lrel@otp-workloads.sh, test/scenarios/releases/el98-lrel@otp-workloads.sh
Scenario scripts fetch omc/omg tools and add the new suite to the host1 test run.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Sequence Diagram(s)

sequenceDiagram
  participant Suite as sos-report-support-tools.robot
  participant Host as MicroShift Host
  participant Local as Local Test Runner
  participant Omc as omc
  participant Omg as omg

  Suite->>Host: Create Sos Report
  Host-->>Suite: sosreport tarball path
  Suite->>Host: Extract Sos Report
  Host-->>Suite: extracted sosreport dir
  Suite->>Local: Download Must Gather Data
  Local-->>Suite: LOCAL_SOS_DIR / MUST_GATHER_PATH
  Suite->>Omc: use MUST_GATHER_PATH, get pods/nodes, logs
  Suite->>Omg: use MUST_GATHER_PATH, get pods/nodes, logs, projects
  Suite->>Local: Teardown removes downloaded SOS dir
Loading

Related Issues: None found in provided context.

Related PRs: None found in provided context.

Suggested labels: test, robot-framework

Suggested reviewers: None determined from provided context.

Poem: A rabbit hopped through sos-report land, 🐇
Gathered keywords with a helping hand,
Taught omc and omg to read the tale,
Fetched their tools without one fail,
Now every scenario runs the plan!


Caution

Pre-merge checks failed

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

  • Ignore

❌ Failed checks (1 error, 1 warning)

Check name Status Explanation Resolution
No-Sensitive-Data-In-Logs ❌ Error New suite logs ${USHIFT_HOST} and uses Local Command Should Work, which logs outputs from omg get pods -A -o json and logs, exposing hostnames/cluster data. Remove or mask Log Host: ${USHIFT_HOST} and avoid logging raw command stdout for omg/omc outputs; redact or suppress sensitive fields.
Ipv6 And Disconnected Network Test Compatibility ⚠️ Warning FAIL: scenario_run_tests fetches omc from GitHub and omg via pip, so the new suite needs public internet in disconnected jobs. Vendor or mirror omc/omg in internal artifacts, or mark the suite skipped in disconnected CI so it doesn't run there.
✅ Passed checks (13 passed)
Check name Status Explanation
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 All added/updated test titles are static Robot case names; none include pod, node, namespace, UUID, timestamp, or other run-specific data.
Test Structure And Quality ✅ Passed PASS: The PR only touches Robot Framework suites/resources and shell scripts; there are no Ginkgo It/BeforeEach/AfterEach tests to evaluate.
Microshift Test Compatibility ✅ Passed PASS — this adds Robot support-tool tests, not Ginkgo e2e, and omc/o-must-gather are for querying must-gather data rather than the OpenShift API. citeturn4search2turn6search0
Single Node Openshift (Sno) Test Compatibility ✅ Passed The new Robot suites only check single-host MicroShift SOS output and local tool behavior; they do not require multiple nodes, HA, or rescheduling.
Topology-Aware Scheduling Compatibility ✅ Passed Only Robot test/resource files and scenario shell scripts changed; no deployment manifests, operators, controllers, or scheduling constraints were introduced.
Ote Binary Stdout Contract ✅ Passed PASS: The PR only changes Robot tests and installer/scenario scripts; it doesn't touch any OTE binary entrypoints or add process-level stdout writes.
No-Weak-Crypto ✅ Passed No MD5/SHA1/DES/RC4/3DES/Blowfish/ECB, custom crypto, or secret comparisons were added; only SHA-256 checksum verification appears.
Container-Privileges ✅ Passed PR only changes Robot/shell files; no manifest privilege settings like privileged, hostPID, or allowPrivilegeEscalation were added.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: adding an automated sosreport consumption test for omg and omc support tools.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@openshift-ci openshift-ci Bot requested review from jogeo and pmtk July 6, 2026 13:35
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 6, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick comments (2)
test/suites/otp-workloads/sos-report-support-tools.robot (2)

86-99: 🔒 Security & Privacy | 🔵 Trivial | ⚡ Quick win

Pin the omc release version and verify checksum.

Downloading latest from GitHub means the suite can silently start testing against a new/breaking omc release, and there's no integrity check on the binary before chmod +x/execution.

🔒 Pin version and verify checksum
+${OMC_VERSION}    v0.x.y  # pin to a known-good release
...
-        Command Should Work
-        ...    curl -sSfL --connect-timeout 30 --max-time 120 -o /tmp/omc.tar.gz https://github.com/gmeghnag/omc/releases/latest/download/omc_Linux_aarch64.tar.gz
+        Command Should Work
+        ...    curl -sSfL --connect-timeout 30 --max-time 120 -o /tmp/omc.tar.gz https://github.com/gmeghnag/omc/releases/download/${OMC_VERSION}/omc_Linux_aarch64.tar.gz
🤖 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 `@test/suites/otp-workloads/sos-report-support-tools.robot` around lines 86 -
99, Update the Install Omc keyword to stop fetching the mutable GitHub latest
asset and instead download a pinned omc release version for each supported
architecture; use the existing Install Omc flow and OMC_BINARY path to keep the
change localized. Add a checksum verification step after downloading the
archive/binary and before chmod +x or execution, so the suite validates the
artifact integrity for both the aarch64 tarball path and the x86_64 binary path.
Ensure the version and checksum values are explicit and easy to update in one
place.

106-110: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Pin o-must-gather version for reproducibility.

Installing the latest pip release risks unexpected breakage/flakiness if a new upstream release changes CLI behavior.

♻️ Pin package version
-    Command Should Work    ${OMG_VENV}/bin/pip install o-must-gather
+    Command Should Work    ${OMG_VENV}/bin/pip install o-must-gather==<pinned-version>
🤖 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 `@test/suites/otp-workloads/sos-report-support-tools.robot` around lines 106 -
110, The Install Omg keyword currently installs the unpinned latest
o-must-gather release, which can make the sos-report support tools test flaky.
Update the Command Should Work call in Install Omg to install a specific
o-must-gather version instead of the floating package name, so the behavior
stays reproducible across runs. Keep the change localized to the Install Omg
keyword and preserve the existing venv setup and OMG_BINARY help check.
🤖 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 `@test/suites/otp-workloads/sos-report-support-tools.robot`:
- Around line 86-99: Update the Install Omc keyword to stop fetching the mutable
GitHub latest asset and instead download a pinned omc release version for each
supported architecture; use the existing Install Omc flow and OMC_BINARY path to
keep the change localized. Add a checksum verification step after downloading
the archive/binary and before chmod +x or execution, so the suite validates the
artifact integrity for both the aarch64 tarball path and the x86_64 binary path.
Ensure the version and checksum values are explicit and easy to update in one
place.
- Around line 106-110: The Install Omg keyword currently installs the unpinned
latest o-must-gather release, which can make the sos-report support tools test
flaky. Update the Command Should Work call in Install Omg to install a specific
o-must-gather version instead of the floating package name, so the behavior
stays reproducible across runs. Keep the change localized to the Install Omg
keyword and preserve the existing venv setup and OMG_BINARY help check.

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: d7bfe747-df73-4617-ac1e-b8e8420f2d45

📥 Commits

Reviewing files that changed from the base of the PR and between 45630c7 and 1b99a3d.

📒 Files selected for processing (6)
  • test/resources/sos-report.resource
  • test/scenarios-bootc/el10/releases/el102-lrel@otp-workloads.sh
  • test/scenarios-bootc/el9/releases/el98-lrel@otp-workloads.sh
  • test/scenarios/releases/el98-lrel@otp-workloads.sh
  • test/suites/otp-workloads/sos-report-plugins.robot
  • test/suites/otp-workloads/sos-report-support-tools.robot

@agullon agullon changed the title USHIFT-7221: Automate sosreport compatibility test with omc and omg tools USHIFT-7221: Automate Polarion test: Verify sosreport can be consumed by omg & omc support tools Jul 6, 2026
@agullon

agullon commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

/label tide/merge-method-squash

@openshift-ci openshift-ci Bot added the tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges. label Jul 6, 2026
@coderabbitai coderabbitai Bot added the ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review label Jul 6, 2026
@agullon

agullon commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

/retest

1 similar comment
@agullon

agullon commented Jul 7, 2026

Copy link
Copy Markdown
Contributor Author

/retest

Comment thread test/suites/otp-workloads/sos-report-support-tools.robot Outdated
Comment thread test/suites/otp-workloads/sos-report-support-tools.robot Outdated
Comment thread test/suites/otp-workloads/sos-report-support-tools.robot Outdated
Comment thread test/suites/otp-workloads/sos-report-support-tools.robot Outdated
@ggiguash ggiguash self-assigned this Jul 7, 2026
@agullon agullon marked this pull request as draft July 7, 2026 07:35
@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 7, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
test/suites/otp-workloads/sos-report-support-tools.robot (1)

102-125: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Derive pod and container from the same lookup. openshift-dns has multiple workloads (dns-default, node-resolver), so picking the “first” pod and container in separate calls can pair mismatched names and break logs.

🤖 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 `@test/suites/otp-workloads/sos-report-support-tools.robot` around lines 102 -
125, The log retrieval in Verify Tool Can Retrieve Logs is deriving pod and
container separately, which can mismatch when a namespace has multiple
workloads. Update Get Pod Name From Tool and Get Container Name From Tool (or
replace them with a single helper) so both values come from the same pod lookup,
and have Verify Tool Can Retrieve Logs use that paired result when building the
logs command.
🧹 Nitpick comments (2)
test/suites/otp-workloads/sos-report-support-tools.robot (1)

18-26: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

OMG_VERSION duplicated across files.

${OMG_VERSION} (1.2.6) is hardcoded here and independently hardcoded again in scripts/fetch_tools.sh's gettool_omg. These two pins can silently drift since nothing keeps them in sync.

🤖 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 `@test/suites/otp-workloads/sos-report-support-tools.robot` around lines 18 -
26, The OMG version pin is duplicated in this Robot suite variable block and in
scripts/fetch_tools.sh’s gettool_omg, which can drift out of sync. Make the
version source single-sourced by reusing one shared constant or variable
reference for OMG_VERSION in both places, and update the test suite to consume
that shared value instead of hardcoding 1.2.6 here.
scripts/fetch_tools.sh (1)

303-311: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Drop the unused gettool_omg fetcher or wire the suite to reuse it. test/suites/otp-workloads/sos-report-support-tools.robot installs o-must-gather into a remote /tmp/omg-venv, so the local ${DEST_DIR}/omg-venv created by scripts/fetch_tools.sh has no in-tree consumer. That also leaves the 1.2.6 pin duplicated beside ${OMG_VERSION}.

🤖 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 `@scripts/fetch_tools.sh` around lines 303 - 311, The gettool_omg fetcher is
currently unused, so either remove it from fetch_tools.sh or update the suite to
call it instead of creating its own remote /tmp/omg-venv. If you keep it, make
the o-must-gather install in
test/suites/otp-workloads/sos-report-support-tools.robot reuse the existing
gettool_omg logic and align the version source with ${OMG_VERSION} rather than
duplicating the 1.2.6 pin. Use the gettool_omg function and OMG_VERSION symbol
as the main points of reference when wiring this up.
🤖 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.

Outside diff comments:
In `@test/suites/otp-workloads/sos-report-support-tools.robot`:
- Around line 102-125: The log retrieval in Verify Tool Can Retrieve Logs is
deriving pod and container separately, which can mismatch when a namespace has
multiple workloads. Update Get Pod Name From Tool and Get Container Name From
Tool (or replace them with a single helper) so both values come from the same
pod lookup, and have Verify Tool Can Retrieve Logs use that paired result when
building the logs command.

---

Nitpick comments:
In `@scripts/fetch_tools.sh`:
- Around line 303-311: The gettool_omg fetcher is currently unused, so either
remove it from fetch_tools.sh or update the suite to call it instead of creating
its own remote /tmp/omg-venv. If you keep it, make the o-must-gather install in
test/suites/otp-workloads/sos-report-support-tools.robot reuse the existing
gettool_omg logic and align the version source with ${OMG_VERSION} rather than
duplicating the 1.2.6 pin. Use the gettool_omg function and OMG_VERSION symbol
as the main points of reference when wiring this up.

In `@test/suites/otp-workloads/sos-report-support-tools.robot`:
- Around line 18-26: The OMG version pin is duplicated in this Robot suite
variable block and in scripts/fetch_tools.sh’s gettool_omg, which can drift out
of sync. Make the version source single-sourced by reusing one shared constant
or variable reference for OMG_VERSION in both places, and update the test suite
to consume that shared value instead of hardcoding 1.2.6 here.

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: a3909f35-0b90-43dc-83fd-822aa45b6b12

📥 Commits

Reviewing files that changed from the base of the PR and between d5c0c9d and 3b1c57f.

📒 Files selected for processing (2)
  • scripts/fetch_tools.sh
  • test/suites/otp-workloads/sos-report-support-tools.robot

@coderabbitai coderabbitai Bot removed the ready-for-human-review Indicates a PR has been reviewed by automated tools and is ready for human review label Jul 7, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
test/suites/otp-workloads/sos-report-support-tools.robot (1)

93-99: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick win

Consider a timeout on local process calls.

Local Command Should Work runs commands via Run Process with no timeout. If omc/omg ever hangs (e.g., waiting on stdin or a stuck subprocess), the suite will block indefinitely rather than failing fast.

♻️ Add a bounded timeout
 Local Command Should Work
     [Documentation]    Run a command locally and verify it succeeds.
     [Arguments]    ${command}
-    ${result}=    Process.Run Process    bash    -c    ${command}
+    ${result}=    Process.Run Process    bash    -c    ${command}    timeout=60s    on_timeout=terminate
     Should Be Equal As Integers    ${result.rc}    0
     ...    msg=Local command failed (rc=${result.rc}): ${command}\nstderr: ${result.stderr}
     RETURN    ${result.stdout}
🤖 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 `@test/suites/otp-workloads/sos-report-support-tools.robot` around lines 93 -
99, The Local Command Should Work keyword currently runs Process.Run Process
without any timeout, so it can hang indefinitely if a command like omc or omg
blocks. Update this keyword to pass a bounded timeout to Run Process, and keep
the existing rc/stdout/stderr assertions so failures still report useful
context. Use the Local Command Should Work and Process.Run Process symbols to
locate and adjust the call.
🤖 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 `@test/suites/otp-workloads/sos-report-support-tools.robot`:
- Around line 93-99: The Local Command Should Work keyword currently runs
Process.Run Process without any timeout, so it can hang indefinitely if a
command like omc or omg blocks. Update this keyword to pass a bounded timeout to
Run Process, and keep the existing rc/stdout/stderr assertions so failures still
report useful context. Use the Local Command Should Work and Process.Run Process
symbols to locate and adjust the call.

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: fd4360e1-2334-4b52-9af6-d1c0486d3411

📥 Commits

Reviewing files that changed from the base of the PR and between 3b1c57f and df1c304.

📒 Files selected for processing (7)
  • scripts/fetch_tools.sh
  • test/requirements.txt
  • test/run.sh
  • test/scenarios-bootc/el10/releases/el102-lrel@otp-workloads.sh
  • test/scenarios-bootc/el9/releases/el98-lrel@otp-workloads.sh
  • test/scenarios/releases/el98-lrel@otp-workloads.sh
  • test/suites/otp-workloads/sos-report-support-tools.robot
💤 Files with no reviewable changes (1)
  • scripts/fetch_tools.sh
✅ Files skipped from review due to trivial changes (1)
  • test/run.sh

Add Robot Framework test (OCP-61971) that verifies MicroShift sosreport
output can be consumed by the omc and omg support tools. Both tools are
pre-installed locally via fetch_tools.sh with pinned versions and
checksum verification (omc v3.15.0, omg v1.2.6), then run against a
sosreport downloaded from the remote host.

The test generates a sosreport, extracts it on the remote host, downloads
the sos_commands/microshift directory locally via SCP, and validates that
each tool can list pods, nodes, projects, and retrieve container logs.

Also extract shared SOS report keywords (Create Sos Report, Extract Sos
Report, Cleanup Sos Report Directory) into a new sos-report.resource to
eliminate duplication between test suites.

USHIFT-7221

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

pre-commit.check-secrets: ENABLED
@agullon agullon marked this pull request as ready for review July 7, 2026 09:50
@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 Jul 7, 2026
@openshift-ci openshift-ci Bot requested review from jerpeter1 and kasturinarra July 7, 2026 09:51
@agullon

agullon commented Jul 8, 2026

Copy link
Copy Markdown
Contributor Author

/retest

1 similar comment
@agullon

agullon commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

/retest

@agullon

agullon commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

/override ci/prow/e2e-aws-tests-bootc-release-arm-el10
/override ci/prow/e2e-aws-tests-bootc-release-el9
/override ci/prow/e2e-aws-tests-bootc-release-el10

@openshift-ci

openshift-ci Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

@agullon: Overrode contexts on behalf of agullon: ci/prow/e2e-aws-tests-bootc-release-arm-el10, ci/prow/e2e-aws-tests-bootc-release-el10, ci/prow/e2e-aws-tests-bootc-release-el9

Details

In response to this:

/override ci/prow/e2e-aws-tests-bootc-release-arm-el10
/override ci/prow/e2e-aws-tests-bootc-release-el9
/override ci/prow/e2e-aws-tests-bootc-release-el10

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.

@kasturinarra

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jul 10, 2026
@openshift-ci

openshift-ci Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: agullon, kasturinarra

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:
  • OWNERS [agullon,kasturinarra]

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

@agullon

agullon commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

/verified by CI

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jul 10, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@agullon: This PR has been marked as verified by CI.

Details

In response to this:

/verified by CI

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.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

/retest-required

Remaining retests: 0 against base HEAD 94a6b61 and 2 for PR HEAD ae333bc in total

@agullon

agullon commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

/override ci/prow/e2e-aws-tests-release
/override ci/prow/e2e-aws-tests-bootc-release-el10
/override ci/prow/e2e-aws-tests-bootc-release-el9
/override ci/prow/e2e-aws-tests-bootc-release-arm-el10
/override ci/prow/e2e-aws-tests-release-arm

because failures not related to the changes

@openshift-ci

openshift-ci Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

@agullon: Overrode contexts on behalf of agullon: ci/prow/e2e-aws-tests-bootc-release-arm-el10, ci/prow/e2e-aws-tests-bootc-release-el10, ci/prow/e2e-aws-tests-bootc-release-el9, ci/prow/e2e-aws-tests-release, ci/prow/e2e-aws-tests-release-arm

Details

In response to this:

/override ci/prow/e2e-aws-tests-release
/override ci/prow/e2e-aws-tests-bootc-release-el10
/override ci/prow/e2e-aws-tests-bootc-release-el9
/override ci/prow/e2e-aws-tests-bootc-release-arm-el10
/override ci/prow/e2e-aws-tests-release-arm

because failures not related to the changes

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.

@openshift-merge-bot openshift-merge-bot Bot merged commit d632caa into openshift:main Jul 10, 2026
19 checks passed
@openshift-ci

openshift-ci Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

@agullon: 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.

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. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants