mcpbeat

Rhdh Ocp Tests

openshift/rhdh-ocp-tests

>- List, generate, add, and remove OCP-versioned test entries (e2e-ocp-*) in RHDH ci-operator config files. Covers only OCP cluster-claim tests, not K8s platform tests (AKS, EKS, GKE, OSD)

4k tokens
context cost
the whole folder, loaded on every use
5
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
325
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/openshift/release --skill rhdh-ocp-tests

What comes with it

8 266 bytes besides the instruction
OWNERS
scripts/OWNERS
scripts/generate-test-entry.sh
scripts/list-ocp-test-configs.sh

What it tells the agent to use

found in the instruction text
Bash runs shell commands — read the instruction before connecting

The instruction itself

14 sections, as written by the author

RHDH OCP Test Management

Manage OCP-specific test entries in RHDH ci-operator configuration files. This skill covers tests that use OCP cluster claims (cluster_claim.version), not K8s platform tests (AKS, EKS, GKE, OSD-GCP) which use different provisioning workflows.

When to Use

Use this skill when you need to:

  • List which OCP versions have helm-nightly test entries per RHDH release branch
  • Add a new OCP version test entry to a config file
  • Remove an end-of-life OCP version test entry from a config file
  • Generate a test entry YAML block for review before adding it

Prerequisites

  • yq (v4+) must be available for YAML parsing
  • Working directory must be the root of the openshift/release repository
  • CLAUDE_SKILL_DIR is set automatically by the Claude Code skill loader. For manual invocation, set it to this skill's directory (e.g., CLAUDE_SKILL_DIR=ci-operator/config/redhat-developer/rhdh/.claude/skills/rhdh-ocp-tests)

Important: Branch Terminology

"Branch" refers to the RHDH product branch encoded in the config filename (e.g., main, release-1.8, release-1.9), NOT a git branch in the openshift/release repo. All CI config files live on the main git branch of openshift/release.

| Config filename | Product branch | Git branch |

|----------------|----------------|------------|

| redhat-developer-rhdh-main.yaml | main | main |

| redhat-developer-rhdh-release-1.9.yaml | release-1.9 | main |

| redhat-developer-rhdh-release-1.8.yaml | release-1.8 | main |

Listing OCP Test Configs

Run the bundled script from the repository root:

bash "${CLAUDE_SKILL_DIR}/scripts/list-ocp-test-configs.sh"

Filter by product branch

bash "${CLAUDE_SKILL_DIR}/scripts/list-ocp-test-configs.sh" --branch main

Output format

The script extracts OCP versions from cluster_claim.version in each test entry (the source of truth), not from test names. This catches all OCP-targeted tests, including ones that don't encode the version in their name (e.g., e2e-ocp-helm-nightly targets 4.18).

=== Branch: main ===
TEST_NAME                                      OCP_VERSION   CRON                           OPTIONAL
e2e-ocp-helm                                   4.18          N/A                            false
e2e-ocp-helm-nightly                           4.18          0 4 * * *                      true
e2e-ocp-v4-19-helm-nightly                     4.19          0 5 * * TUE,THU,SAT,SUN        true
e2e-ocp-v4-20-helm-nightly                     4.20          0 5 * * TUE,THU,SAT,SUN        true
e2e-ocp-v4-21-helm-nightly                     4.21          0 2 * * TUE,THU,SAT,SUN        true
e2e-ocp-operator-nightly                       4.18          0 5 * * TUE,THU,SAT,SUN        true

  OCP versions tested: 4.18 4.19 4.20 4.21

Generating a Test Entry

Use the bundled script to generate a new test entry YAML block:

bash "${CLAUDE_SKILL_DIR}/scripts/generate-test-entry.sh" --version 4.22 --branch main

With a specific reference version

bash "${CLAUDE_SKILL_DIR}/scripts/generate-test-entry.sh" --version 4.22 --branch main --reference 4.21

The script outputs a ready-to-insert YAML block based on an existing versioned test entry with all version-specific values substituted.

Adding a Test Entry

After generating and reviewing the test entry:

  • Open the target config file (e.g., ci-operator/config/redhat-developer/rhdh/redhat-developer-rhdh-main.yaml)
  • Insert the new test entry in the tests: list, before zz_generated_metadata:
  • Place it adjacent to other e2e-ocp-v*-helm-nightly entries for readability
  • Run make update to regenerate Prow job configs
  • Verify the generated jobs in ci-operator/jobs/redhat-developer/rhdh/

Test entry fields to update

When creating a test entry for OCP version X.Y:

| Field | Value |

|-------|-------|

| as | e2e-ocp-vX-Y-helm-nightly |

| cluster_claim.version | "X.Y" |

| steps.env.OC_CLIENT_VERSION | stable-X.Y |

All other fields (cron schedule, owner, cloud, architecture, steps, workflow) remain the same as the reference entry.

Removing a Test Entry

To remove an OCP version test entry:

  • Open the target config file
  • Remove the entire test block where as: e2e-ocp-vX-Y-helm-nightly
  • Run make update to regenerate Prow job configs
  • Verify the removed jobs are no longer in ci-operator/jobs/redhat-developer/rhdh/

IMPORTANT: When removing an OCP version, check all product branch configs (main, release-1.9, release-1.8, etc.) for entries that need removal.

After Any Change

Always run make update after modifying CI config files:

make update

This regenerates:

  • Prow job configs in ci-operator/jobs/
  • zz_generated_metadata sections
  • Other downstream artifacts

File Layout

CI config files live in:

ci-operator/config/redhat-developer/rhdh/
├── CLAUDE.md                                         # Release branch checklist
├── OWNERS                                            # Approvers/reviewers
├── redhat-developer-rhdh-main.yaml                   # Main branch config
├── redhat-developer-rhdh-release-1.8.yaml            # Release 1.8 config
└── redhat-developer-rhdh-release-1.9.yaml            # Release 1.9 config

Generated Prow jobs go to:

ci-operator/jobs/redhat-developer/rhdh/
├── redhat-developer-rhdh-main-presubmits.yaml
├── redhat-developer-rhdh-main-periodics.yaml
├── redhat-developer-rhdh-release-1.8-presubmits.yaml
├── redhat-developer-rhdh-release-1.8-periodics.yaml
├── redhat-developer-rhdh-release-1.9-presubmits.yaml
└── redhat-developer-rhdh-release-1.9-periodics.yaml

How to use it

Copy the folder

Take openshift/rhdh-ocp-tests from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.