Skip to content

Skip nongroovy and upgrade e2e tests for UI-only PRs#80760

Open
dvail wants to merge 3 commits into
openshift:mainfrom
dvail:dv/disable-non-ui-jobs-on-ui-only-prs
Open

Skip nongroovy and upgrade e2e tests for UI-only PRs#80760
dvail wants to merge 3 commits into
openshift:mainfrom
dvail:dv/disable-non-ui-jobs-on-ui-only-prs

Conversation

@dvail

@dvail dvail commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Skips a variety of OSCI jobs that are 100% unaffected by changes isolated under ui/ when a pull request only changes files under ui/.

Uses same pattern precedent from other similar jobs.

Summary by CodeRabbit

This pull request improves CI/CD efficiency for the StackRox repository by preventing specific OSCI end-to-end test jobs from running when a pull request contains changes exclusively under the ui/ directory. Since these jobs are not impacted by UI-only updates, skipping them reduces unnecessary pipeline load.

What changed

  • In ci-operator/config/stackrox/stackrox/stackrox-stackrox-master.yaml:
    • Updated gke-nongroovy-e2e-tests to add skip_if_only_changed: ^ui/ and removed always_run: true.
    • Updated gke-upgrade-tests to add skip_if_only_changed: ^ui/ and removed always_run: true.
  • In OpenShift-specific variants:
    • ci-operator/config/stackrox/stackrox/stackrox-stackrox-master__ocp-4-12.yaml: updated nongroovy-e2e-tests with skip_if_only_changed: ^ui/ and removed always_run: true.
    • ci-operator/config/stackrox/stackrox/stackrox-stackrox-master__ocp-4-21.yaml: updated nongroovy-e2e-tests with skip_if_only_changed: ^ui/ and removed always_run: true.
    • ci-operator/config/stackrox/stackrox/stackrox-stackrox-master__ocp-4-22.yaml: updated nongroovy-e2e-tests with skip_if_only_changed: ^ui/ and removed always_run: true.

Overall impact
UI-only PRs will no longer trigger these nongroovy and upgrade E2E test jobs across the supported master and OpenShift versions, aligning the behavior with existing CI patterns in the codebase.

@coderabbitai

coderabbitai Bot commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (1)
  • ci-operator/jobs/stackrox/stackrox/stackrox-stackrox-master-presubmits.yaml is excluded by !ci-operator/jobs/**

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: 275e748d-d4ef-4d81-881a-7957c0b02f51

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Walkthrough

Adds skip_if_only_changed: ^ui/ to five e2e CI job definitions across four stackrox master branch config files: gke-nongroovy-e2e-tests, gke-upgrade-tests (master config), and nongroovy-e2e-tests (OCP 4.12, 4.21, 4.22 variant configs). The always_run: true flag is removed from each job.

Changes

E2e job UI-only skip conditions

Layer / File(s) Summary
skip_if_only_changed added to all e2e jobs
ci-operator/config/stackrox/stackrox/stackrox-stackrox-master.yaml, ci-operator/config/stackrox/stackrox/stackrox-stackrox-master__ocp-4-12.yaml, ci-operator/config/stackrox/stackrox/stackrox-stackrox-master__ocp-4-21.yaml, ci-operator/config/stackrox/stackrox/stackrox-stackrox-master__ocp-4-22.yaml
Adds skip_if_only_changed: ^ui/ to gke-nongroovy-e2e-tests and gke-upgrade-tests in the master config, and to nongroovy-e2e-tests in each OCP variant config; removes always_run: true from each job, causing all five jobs to be skipped when the only changed files are under the ui/ path.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Suggested labels

lgtm, approved, rehearsals-ack

Suggested reviewers

  • davdhacs
  • tommartensen
🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: skipping nongroovy and upgrade e2e tests for UI-only PRs, which matches the core objective of conditionally skipping CI jobs when only UI files are modified.
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 This PR only modifies CI configuration YAML files and supporting utility scripts, not Ginkgo test code. The custom check about stable test names does not apply to CI configuration changes.
Test Structure And Quality ✅ Passed The PR modifies only CI/CD configuration YAML files (OpenShift CI Operator configs), not Ginkgo test code. The custom check for test structure/quality is not applicable to this PR.
Microshift Test Compatibility ✅ Passed This PR modifies only CI job configuration files (YAML) to skip certain jobs on UI-only changes. No new Ginkgo e2e tests are added, so the MicroShift compatibility check is not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed PR modifies only CI job config YAML files (adds skip_if_only_changed conditions), not new Ginkgo e2e tests, so SNO compatibility check is not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed PR modifies only CI operator configuration files (job trigger conditions), not deployment manifests or operator code. No scheduling constraints, affinity rules, node selectors, or topology-related...
Ote Binary Stdout Contract ✅ Passed The OTE Binary Stdout Contract check applies to source code violations in process-level code. This PR contains only YAML CI/CD configuration files with no source code changes, making the check inap...
Ipv6 And Disconnected Network Test Compatibility ✅ Passed This PR only modifies CI/CD job configuration YAML files (stackrox-stackrox-master*.yaml), adding skip_if_only_changed directives and removing always_run flags. No new Ginkgo e2e tests are added. T...
No-Weak-Crypto ✅ Passed PR modifies only CI/CD YAML configuration files with no cryptographic code or weak crypto patterns present.
Container-Privileges ✅ Passed PR modifies only CI job scheduling configs (skip_if_only_changed, always_run flags), not container/K8s manifests. No privilege-related container configs present.
No-Sensitive-Data-In-Logs ✅ Passed PR modifies only CI/CD configuration files with no code changes, logging statements, or sensitive data exposure; changes are job trigger conditions using standard skip_if_only_changed pattern.

✏️ Tip: You can configure your own custom pre-merge checks in the 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 and usage tips.

@openshift-ci openshift-ci Bot requested review from JoukoVirtanen and dcaravel June 18, 2026 19:06
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@dvail, pj-rehearse: unable to determine affected jobs. This could be due to a branch that needs to be rebased. ERROR:

could not load configuration from candidate revision of release repo: failed to load Prow configuration from release repo: [job pull-ci-stackrox-stackrox-master-gke-nongroovy-e2e-tests is set to always run but also declares skip_if_only_changed targets, which are mutually exclusive, job pull-ci-stackrox-stackrox-master-gke-upgrade-tests is set to always run but also declares skip_if_only_changed targets, which are mutually exclusive, job pull-ci-stackrox-stackrox-master-ocp-4-12-nongroovy-e2e-tests is set to always run but also declares skip_if_only_changed targets, which are mutually exclusive, job pull-ci-stackrox-stackrox-master-ocp-4-21-nongroovy-e2e-tests is set to always run but also declares skip_if_only_changed targets, which are mutually exclusive, job pull-ci-stackrox-stackrox-master-ocp-4-22-nongroovy-e2e-tests is set to always run but also declares skip_if_only_changed targets, which are mutually exclusive]
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.

@dvail

dvail commented Jun 18, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

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

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@dvail: 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
pull-ci-stackrox-stackrox-master-ocp-4-22-nongroovy-e2e-tests stackrox/stackrox presubmit Ci-operator config changed
pull-ci-stackrox-stackrox-master-ocp-4-21-nongroovy-e2e-tests stackrox/stackrox presubmit Ci-operator config changed
pull-ci-stackrox-stackrox-master-gke-nongroovy-e2e-tests stackrox/stackrox presubmit Ci-operator config changed
pull-ci-stackrox-stackrox-master-gke-upgrade-tests stackrox/stackrox presubmit Ci-operator config changed
pull-ci-stackrox-stackrox-master-ocp-4-12-nongroovy-e2e-tests stackrox/stackrox presubmit Ci-operator config changed
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.

@dvail

dvail commented Jun 18, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

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

@davdhacs

Copy link
Copy Markdown
Contributor

/lgtm

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

openshift-ci Bot commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: davdhacs, dvail

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 Jun 18, 2026
@davdhacs

Copy link
Copy Markdown
Contributor

These jobs are required on PRs in the stackrox repo. GHA jobs that are required, are not enforced if skipped. However, I do not know if openshift skipped jobs will be treated the same way. We may have to remove them from the check_required list.

@openshift-ci

openshift-ci Bot commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

@dvail: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/rehearse/stackrox/stackrox/master/ocp-4-12-nongroovy-e2e-tests d104ee9 link unknown /pj-rehearse pull-ci-stackrox-stackrox-master-ocp-4-12-nongroovy-e2e-tests

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.

@davdhacs

Copy link
Copy Markdown
Contributor

@msugakov

Copy link
Copy Markdown
Contributor

Comment on lines +103 to +104
- as: gke-nongroovy-e2e-tests
skip_if_only_changed: ^ui/

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.

I doubt it's going to work as intended.

Image

These jobs are configured as required in branch rules. This means, they are required for merging PR.
If these jobs are skipped, GitHub will block PR displaying the jobs as pending.
The author of the PR will have to manually trigger them with /test <...> comments.

This would delay the PR cycle and frustrate folks who are used to have things working more automatically.

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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants