openshift/rhdh-ocp-pool
>- List existing RHDH OCP Hive ClusterPool configurations and generate new pool YAML for a target OCP version, with imageSetRef aligned from other pools in the openshift/release repository. Covers OCP pools only, not K8s platforms
npx skills add https://github.com/openshift/release --skill rhdh-ocp-pool
List and manage OCP Hive ClusterPool configurations for RHDH in the openshift/release repository. This skill covers OCP cluster pools only — K8s platform clusters (AKS, EKS, GKE) are provisioned via MAPT and OSD-GCP via a separate claim workflow.
Use this skill when you need to:
yq (v4+) must be available for YAML parsingopenshift/release repositoryCLAUDE_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-pool)Run the bundled script from the repository root:
bash "${CLAUDE_SKILL_DIR}/scripts/list-cluster-pools.sh"
The script outputs a table with columns:
| Column | Description |
|--------|-------------|
| VERSION | OCP minor version (e.g., 4.18) |
| POOL_NAME | Hive ClusterPool resource name |
| SIZE | Desired pool size |
| MAX | Maximum pool size |
| RUNNING | Number of clusters kept running (hibernation bypass) |
| IMAGE_SET | ClusterImageSet reference name |
| FILENAME | Pool YAML filename |
Use the bundled generation script:
bash "${CLAUDE_SKILL_DIR}/scripts/generate-cluster-pool.sh" --version 4.22
bash "${CLAUDE_SKILL_DIR}/scripts/generate-cluster-pool.sh" --version 4.22 --reference 4.21
bash "${CLAUDE_SKILL_DIR}/scripts/generate-cluster-pool.sh" --version 4.22 --dry-run
With --dry-run, the script outputs the generated YAML to stdout but does not write the file to disk. Use this to review the output before committing to the change.
imageSetRef by scanning ALL cluster pools across the entire clusters/hosted-mgmt/hive/pools/ directory (not just RHDH pools). This ensures alignment with other teams' pools for the same OCP version.--reference to pick one).version, version_lower, version_upper, pool name, and imageSetRef.size: 1, maxSize: 2, no runningCount.clusters/hosted-mgmt/hive/pools/rhdh/.The imageSetRef.name follows the pattern:
ocp-release-<major>.<minor>.<patch>-multi-for-<major>.<minor>.0-0-to-<next_major>.<next_minor>.0-0
The patch version (e.g., 4.14.63) is determined by what other pools in the repo already use, not by guessing. All pools for a given OCP version across all teams use the same imageSetRef.
To remove a cluster pool for an end-of-life OCP version:
*_clusterpool.yaml filecluster_claim.versionrhdh-ocp-tests skill to check for and remove any remaining OCP test entriesAll cluster pool files live in:
clusters/hosted-mgmt/hive/pools/rhdh/
├── OWNERS # Approvers/reviewers
├── admins_rhdh-cluster-pool_rbac.yaml # RBAC for pool admins
├── rhdh-aws-us-east-2.yaml # Install config secret template
└── rhdh-ocp-<major>-<minor>-0-amd64-aws-us-east-2_clusterpool.yaml # One per OCP version
us-east-2amd64rhdh-qe.devcluster.openshift.comm6i.2xlarge (configured in rhdh-aws-us-east-2 install config)rhdh-aws-credentials secretrhdh-cluster-poolTake openshift/rhdh-ocp-pool from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
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.