Skip to content

SRVKP-11810: Add OpenShift CI configuration for openshift-pipelines/release-tests-ginkgo#79867

Open
anithapriyanatarajan wants to merge 1 commit into
openshift:mainfrom
anithapriyanatarajan:ci-pipelines-release-test
Open

SRVKP-11810: Add OpenShift CI configuration for openshift-pipelines/release-tests-ginkgo#79867
anithapriyanatarajan wants to merge 1 commit into
openshift:mainfrom
anithapriyanatarajan:ci-pipelines-release-test

Conversation

@anithapriyanatarajan
Copy link
Copy Markdown

@anithapriyanatarajan anithapriyanatarajan commented May 29, 2026

Add initial CI setup for the Ginkgo-based e2e test repo targeting OCP 4.21 on the aws-osp-qe cluster profile (psi.ospqa.com).

Changes:

  • ci-operator/config: new ci-operator config for release-tests-ginkgo/main branch
    • builds openshift-pipelines-ginkgo-runner image from Dockerfile.CI
    • daily periodic e2e job using ipi-aws workflow
  • ci-operator/step-registry: two new reusable Ginkgo steps
    • openshift-pipelines-ginkgo-install: installs operator via OLM (tests/olm/)
    • openshift-pipelines-ginkgo-tests: runs e2e suite with configurable label filter
  • ci-operator/jobs: auto-generated by make update

Co-authored-by: Co-Pilot(Claude Sonnet 4.6)

Summary by CodeRabbit

This PR adds OpenShift CI configuration and reusable step-registry components to enable automated builds and scheduled e2e runs for the openshift-pipelines/release-tests-ginkgo repository (a Ginkgo-based e2e test suite).

What this changes in practice

  • CI operator config for release-tests-ginkgo (OCP 4.21):

    • Builds an image named openshift-pipelines-ginkgo-runner from Dockerfile.CI.
    • Adds a daily scheduled e2e job (openshift-pipelines-e2e-osp) that runs the ipi-aws workflow against the aws-osp-qe cluster profile (BASE_DOMAIN set to psi.ospqa.com).
    • Configures Slack reporting for job results and sets resource defaults consistent with OpenShift CI conventions.
  • Two reusable step-registry steps to run the suite:

    • openshift-pipelines-ginkgo-install
      • Runs the repo's install tests (tests/olm/) to install the operator via OLM.
      • Configurable env: OLM_CHANNEL (default: latest), INSTALL_TIMEOUT (default: 30m).
      • Step runtime settings: 10m grace period; resources.requests: cpu=1, memory=500Mi.
    • openshift-pipelines-ginkgo-tests
      • Runs the Ginkgo e2e tests (./tests/...) with configurable label filter and timeout.
      • Configurable env: GINKGO_LABEL_FILTER (default: "e2e && !disconnected"), TEST_TIMEOUT (default: 60m).
      • Step runtime settings: 10m grace period; resources.requests: cpu=1, memory=500Mi.
      • Produces JUnit XML and writes artifacts to ARTIFACT_DIR.
  • Ownership and Prow/plugin config

    • Adds/updates OWNERS files for the ci-operator config and both step-registry entries to establish approvers/reviewers.
    • Adds a small Prow pluginconfig entry scoped to openshift-pipelines/release-tests-ginkgo.

Overall impact

  • Enables automated CI image builds and a scheduled end-to-end test pipeline for release-tests-ginkgo on the specified AWS/OSP QE cluster using established OpenShift CI patterns and reusable step-registry components.

@openshift-ci openshift-ci Bot requested review from dfrazzette and jmguzik May 29, 2026 11:00
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 29, 2026

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: Enterprise

Run ID: 60d99efd-f0a0-4d17-b1e6-079a959a7067

📥 Commits

Reviewing files that changed from the base of the PR and between be99504 and 8207f12.

⛔ Files ignored due to path filters (3)
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/OWNERS is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (12)
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml
  • core-services/prow/02_config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • core-services/prow/02_config/openshift-pipelines/release-tests-ginkgo/_pluginconfig.yaml
✅ Files skipped from review due to trivial changes (5)
  • core-services/prow/02_config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS
🚧 Files skipped from review as they are similar to previous changes (3)
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh

Walkthrough

Adds OpenShift Pipelines release-tests-ginkgo job, prow plugin config, and two step-registry entries (install and tests) with OWNER metadata and runner scripts that authenticate, derive cluster URLs, run Ginkgo suites, and emit JUnit/artifact outputs.

Changes

Ginkgo test infrastructure

Layer / File(s) Summary
Release test configuration
ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS, ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml, core-services/prow/02_config/openshift-pipelines/release-tests-ginkgo/OWNERS, core-services/prow/02_config/openshift-pipelines/release-tests-ginkgo/_pluginconfig.yaml
Adds OWNER entries and the ocp4.21 e2e-osp release-tests-ginkgo job manifest with images, resources, scheduled ipi-aws workflow, Slack reporting, and prow plugin configuration.
Ginkgo install step registry entry
ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS, ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-commands.sh, ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json, ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml
Adds OWNERS, metadata and a openshift-pipelines-ginkgo-install step-ref plus a script that authenticates (KUBECONFIG or shared api.login), derives cluster URLs, and runs the install-focused Ginkgo suite with OLM_CHANNEL and INSTALL_TIMEOUT.
Ginkgo tests step registry entry
ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS, ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh, ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.metadata.json, ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml
Adds OWNERS, metadata and a openshift-pipelines-ginkgo-tests step-ref plus a script that authenticates and runs ginkgo run ./tests/... with GINKGO_LABEL_FILTER and TEST_TIMEOUT, producing JUnit and artifact outputs.

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested labels

lgtm, approved, rehearsals-ack

Suggested reviewers

  • srivickynesh
🚥 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 PR title clearly and specifically describes the main change: adding OpenShift CI configuration for a Ginkgo-based test repository, which directly aligns with the changeset's primary objective.
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 PR adds only CI configuration and shell scripts that invoke ginkgo. No actual Ginkgo test definitions (It(), Describe(), etc.) were added, making this check inapplicable.
Test Structure And Quality ✅ Passed PR adds CI configuration and test orchestration scripts only. No Ginkgo test code is included—the actual tests are in openshift-pipelines/release-tests-ginkgo repository. Check is not applicable.
Microshift Test Compatibility ✅ Passed PR adds CI configuration/infrastructure only (YAML, shell scripts), not actual Ginkgo test code with It/Describe definitions. Tests are in external repo.
Single Node Openshift (Sno) Test Compatibility ✅ Passed PR adds only CI infrastructure (configs, wrappers); no actual Ginkgo test code with It/Describe/Context/When declarations.
Topology-Aware Scheduling Compatibility ✅ Passed PR adds only CI/CD infrastructure with no deployment manifests, operator code, or scheduling constraints that affect topology-aware scheduling.
Ote Binary Stdout Contract ✅ Passed PR adds only CI configuration and shell scripts; no OTE binary code with stdout writes to JSON interface present. Check not applicable.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed This PR adds CI configuration for Ginkgo tests but no actual Ginkgo test code—only wrapper scripts, YAML configs, and OWNERS files. The actual tests are in a separate repository.
No-Weak-Crypto ✅ Passed No weak crypto algorithms, custom crypto implementations, or non-constant-time secret comparisons found; PR contains only configuration and simple orchestration scripts.
Container-Privileges ✅ Passed No privileged container configurations detected in PR files. All files are CI config, step registry definitions, and test scripts—not Kubernetes manifests with security contexts.
No-Sensitive-Data-In-Logs ✅ Passed Scripts properly disable command tracing (set +x) before evaluating credential files and only re-enable for safe commands. No hardcoded sensitive data found in any configuration files.

✏️ 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
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 29, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

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

@openshift-ci openshift-ci Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label May 29, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 29, 2026

Hi @anithapriyanatarajan. Thanks for your PR.

I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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.

@openshift-ci openshift-ci Bot added the do-not-merge/invalid-owners-file Indicates that a PR should not merge because it has an invalid OWNERS file in it. label May 29, 2026
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

Caution

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

⚠️ Outside diff range comments (1)
ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml (1)

16-55: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Add the missing promotion section to match CI config requirements.

This config defines build_root, images, tests, and releases, but omits promotion, which violates the CI config checklist in this PR’s review guidelines.

As per coding guidelines: “CI configuration files should define build_root, images, tests, promotion, and releases sections following the CI operator configuration specification”.

🤖 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
`@ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml`
around lines 16 - 55, This file is missing the top-level promotion section
required by the CI operator spec; add a "promotion" key (alongside the existing
build_root/images/tests/releases entries) that follows the repo's promotion
schema — include required fields such as name/namespace/tag or promote: true and
any additional_images or tag_specification entries expected by your CI (mirror
the pattern used in other release-tests-ginkgo CI configs) so the job (tests: -
as: openshift-pipelines-e2e-osp) can be promoted correctly.
🤖 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
`@ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-commands.sh`:
- Around line 5-10: The script currently dereferences KUBECONFIG directly in the
if test which will cause an exit under set -u; update the conditional to use a
safe parameter expansion (e.g. ${KUBECONFIG-} or ${KUBECONFIG:-}) so the test
doesn't trigger a premature exit, leaving the ROSA/Hypershift fallback login
intact; specifically modify the if test that references KUBECONFIG in the
ginkgo-install command block (the if [ -s "..." ]; then ... else ... fi) to use
the safe expansion and apply the same pattern to any other direct KUBECONFIG
dereferences in this script.

In
`@ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh`:
- Around line 5-10: The KUBECONFIG check is not nounset-safe and will fail under
set -u; change the condition to use parameter expansion defaults so it won't
error when KUBECONFIG is unset (e.g. replace the line if [ -s "${KUBECONFIG}" ];
then with a nounset-safe check such as if [ -n "${KUBECONFIG:-}" ] && [ -s
"${KUBECONFIG:-}" ]; then or simply if [ -s "${KUBECONFIG:-}" ]; then), leaving
the oc whoami and the fallback login via eval "$(cat "${SHARED_DIR}/api.login")"
unchanged.

---

Outside diff comments:
In
`@ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml`:
- Around line 16-55: This file is missing the top-level promotion section
required by the CI operator spec; add a "promotion" key (alongside the existing
build_root/images/tests/releases entries) that follows the repo's promotion
schema — include required fields such as name/namespace/tag or promote: true and
any additional_images or tag_specification entries expected by your CI (mirror
the pattern used in other release-tests-ginkgo CI configs) so the job (tests: -
as: openshift-pipelines-e2e-osp) can be promoted correctly.
🪄 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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 48f0ca7b-5822-4961-a42f-43113f5ea6b8

📥 Commits

Reviewing files that changed from the base of the PR and between 6043438 and a5f8a14.

⛔ Files ignored due to path filters (2)
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (10)
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml

@anithapriyanatarajan anithapriyanatarajan force-pushed the ci-pipelines-release-test branch from a5f8a14 to 5e01f57 Compare May 29, 2026 11:25
@openshift-ci openshift-ci Bot removed the do-not-merge/invalid-owners-file Indicates that a PR should not merge because it has an invalid OWNERS file in it. label May 29, 2026
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 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
`@ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-commands.sh`:
- Around line 15-30: Close the unclosed subshell and ensure sensitive values are
captured while tracing is disabled: add the missing closing ')' to match the '('
that starts the subshell, and move the re-enabling of tracing (set -x) to after
the CONSOLE_URL and API_URL assignments so CONSOLE_URL and API_URL are
assigned/exported while set +x is still in effect; reference the subshell that
begins with '(' and the variables CONSOLE_URL and API_URL along with the set +x
/ set -x calls when applying the fix.

In
`@ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh`:
- Around line 15-29: The subshell opened with "(set +x" is never closed and set
-x is re-enabled while CONSOLE_URL and API_URL are still being assigned, which
leaks sensitive cluster URLs; close the subshell after capturing the values
(i.e., put a ")" immediately after the API_URL assignment) so the sensitive
assignments occur inside the set +x protected subshell, then re-enable tracing
(set -x) only afterward before invoking ginkgo run; ensure the ginkgo run uses
the exported CONSOLE_URL and API_URL but those assignments remain inside the
protected subshell to avoid printing them.
🪄 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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 13a6ecac-de12-4626-82f7-ccb57fd3ff02

📥 Commits

Reviewing files that changed from the base of the PR and between a5f8a14 and 5e01f57.

⛔ Files ignored due to path filters (2)
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (10)
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml
✅ Files skipped from review due to trivial changes (6)
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.metadata.json
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml

@anithapriyanatarajan anithapriyanatarajan changed the title ci: add OpenShift CI configuration for openshift-pipelines/release-tests-ginkgo SRVKP-11810: Add OpenShift CI configuration for openshift-pipelines/release-tests-ginkgo May 29, 2026
@openshift-ci-robot
Copy link
Copy Markdown
Contributor

openshift-ci-robot commented May 29, 2026

@anithapriyanatarajan: This pull request references SRVKP-11810 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 story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Add initial CI setup for the Ginkgo-based e2e test repo targeting OCP 4.21 on the aws-osp-qe cluster profile (psi.ospqa.com).

Changes:

  • ci-operator/config: new ci-operator config for release-tests-ginkgo/main branch
  • builds openshift-pipelines-ginkgo-runner image from Dockerfile.CI
  • daily periodic e2e job using ipi-aws workflow
  • ci-operator/step-registry: two new reusable Ginkgo steps
  • openshift-pipelines-ginkgo-install: installs operator via OLM (tests/olm/)
  • openshift-pipelines-ginkgo-tests: runs e2e suite with configurable label filter
  • ci-operator/jobs: auto-generated by make update

Co-authored-by: Co-Pilot(Claude Sonnet 4.6)

Summary by CodeRabbit

This PR sets up OpenShift CI infrastructure for the openshift-pipelines/release-tests-ginkgo repository, a Ginkgo-based e2e test suite for OpenShift Pipelines.

What's being added:

  • CI operator configuration for OCP 4.21 that:

  • Builds a Docker image (openshift-pipelines-ginkgo-runner) from the repository's Dockerfile.CI

  • Configures a daily scheduled e2e test job running on the aws-osp-qe cluster (psi.ospqa.com)

  • Uses the standard ipi-aws workflow to provision test clusters

  • Sends test results to the #tektoncd-pipeline-ci Slack channel

  • Two reusable step registry entries that encapsulate test execution logic:

  • openshift-pipelines-ginkgo-install: Installs the OpenShift Pipelines operator via OLM (from tests/olm/), with configurable OLM channel and timeout

  • openshift-pipelines-ginkgo-tests: Runs the e2e test suite with configurable Ginkgo label filters (defaulting to e2e && !disconnected) and test timeouts

  • OWNERS files that establish code approval and review responsibilities for the new configuration entries

All new configuration files follow OpenShift CI conventions and use consistent resource requests (1 CPU, 500Mi memory) and grace periods (10 minutes).

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.

memory: 200Mi
tests:
- as: openshift-pipelines-e2e-osp
cron: 0 0 * * *
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.

This is a cron job. Could you confirm if the intention is for PR CI or weekly jobs?

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 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
`@ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml`:
- Around line 21-23: Update the documentation block so it accurately reflects
the actual entrypoint: replace the reference to "scripts/run-tests.sh" with a
note that the release-tests-ginkgo suite is invoked directly with "ginkgo run"
(as used by the paired commands file) and mention any relevant flags or test
path pattern (e.g., running tests/... via ginkgo run) so readers are directed to
the correct invocation point rather than the nonexistent script.
🪄 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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 9561c24b-13e2-4727-a44c-aa1df34b3185

📥 Commits

Reviewing files that changed from the base of the PR and between 5e01f57 and be99504.

⛔ Files ignored due to path filters (2)
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-periodics.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (10)
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-commands.sh
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml
✅ Files skipped from review due to trivial changes (5)
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.metadata.json
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.metadata.json
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/OWNERS
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/OWNERS
🚧 Files skipped from review as they are similar to previous changes (2)
  • ci-operator/step-registry/openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml
  • ci-operator/config/openshift-pipelines/release-tests-ginkgo/openshift-pipelines-release-tests-ginkgo-main__openshift-pipelines-ocp4.21-e2e-osp.yaml

Comment on lines +21 to +23
documentation: |-
Runs OpenShift Pipelines e2e tests using the Ginkgo-based
release-tests-ginkgo test suite (tests/...) via scripts/run-tests.sh.
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.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix the step documentation to match the actual entrypoint.

This ref says the suite runs via scripts/run-tests.sh, but the paired commands file invokes ginkgo run directly. That mismatch will send anyone debugging this step to the wrong path.

📝 Suggested doc fix
   documentation: |-
     Runs OpenShift Pipelines e2e tests using the Ginkgo-based
-    release-tests-ginkgo test suite (tests/...) via scripts/run-tests.sh.
+    release-tests-ginkgo test suite (tests/...) by invoking `ginkgo run`
+    from the step command script.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
documentation: |-
Runs OpenShift Pipelines e2e tests using the Ginkgo-based
release-tests-ginkgo test suite (tests/...) via scripts/run-tests.sh.
documentation: |-
Runs OpenShift Pipelines e2e tests using the Ginkgo-based
release-tests-ginkgo test suite (tests/...) by invoking `ginkgo run`
from the step command script.
🤖 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
`@ci-operator/step-registry/openshift-pipelines/ginkgo-tests/openshift-pipelines-ginkgo-tests-ref.yaml`
around lines 21 - 23, Update the documentation block so it accurately reflects
the actual entrypoint: replace the reference to "scripts/run-tests.sh" with a
note that the release-tests-ginkgo suite is invoked directly with "ginkgo run"
(as used by the paired commands file) and mention any relevant flags or test
path pattern (e.g., running tests/... via ginkgo run) so readers are directed to
the correct invocation point rather than the nonexistent script.

@@ -0,0 +1,14 @@
{
"path": "openshift-pipelines/ginkgo-install/openshift-pipelines-ginkgo-install-ref.yaml",
"owners": {
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.

use owner file in repo to sync the reviewers

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Aligned now. Should we add a few additional members?

@srivickynesh
Copy link
Copy Markdown
Contributor

/ok-to-test

@openshift-ci openshift-ci Bot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels May 29, 2026
…sts-ginkgo

Signed-off-by: Anitha Natarajan <anataraj@redhat.com>
@anithapriyanatarajan anithapriyanatarajan force-pushed the ci-pipelines-release-test branch from be99504 to 8207f12 Compare May 29, 2026 13:23
@openshift-merge-bot
Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@anithapriyanatarajan: 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-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-images openshift-pipelines/release-tests-ginkgo presubmit Presubmit changed
periodic-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-openshift-pipelines-e2e-osp N/A periodic Periodic 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.

@anithapriyanatarajan
Copy link
Copy Markdown
Author

/test check-gh-automation

1 similar comment
@anithapriyanatarajan
Copy link
Copy Markdown
Author

/test check-gh-automation

@anithapriyanatarajan
Copy link
Copy Markdown
Author

/retest

@anithapriyanatarajan
Copy link
Copy Markdown
Author

/pj-rehearse periodic-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-openshift-pipelines-e2e-osp

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@anithapriyanatarajan
Copy link
Copy Markdown
Author

/pj-rehearse periodic-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-openshift-pipelines-e2e-osp

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@anithapriyanatarajan
Copy link
Copy Markdown
Author

/pj-rehearse periodic-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-openshift-pipelines-e2e-osp

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

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

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 30, 2026

@anithapriyanatarajan: 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/periodic-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-openshift-pipelines-e2e-osp 8207f12 link unknown /pj-rehearse periodic-ci-openshift-pipelines-release-tests-ginkgo-main-openshift-pipelines-ocp4.21-e2e-osp-openshift-pipelines-e2e-osp

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

jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. ok-to-test Indicates a non-member PR verified by an org member that is safe to test.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants