Skip to content
Development
Skill

/test-tag-pipeline

Create a manual PipelineRun to test tag pipeline changes before merging.

From plugin
hypershift
54022 skills5 agents
Install
$ npx -y skills add openshift/hypershift --skill test-tag-pipeline --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/test-tag-pipeline

Context preview

The summary Claude sees to decide when to auto-load this skill.

Create a manual PipelineRun to test tag pipeline changes before merging.

SKILL.md

test-tag-pipeline.SKILL.md
name: test-tag-pipeline
description: Create a manual PipelineRun to test tag pipeline changes before merging.

Create a manual PipelineRun to test tag pipeline changes before merging.

**Usage**: `/test-tag-pipeline <tag-name> [branch-spec]`

**Arguments**:

  • `tag-name` (required): The existing tag to rebuild (e.g., `v0.1.69`)
  • `branch-spec` (optional): The branch containing the updated pipeline (defaults to `main`)
  • Format: `[fork:]branch-name`
  • If no fork specified, defaults to `openshift`

**What this does**: 1. Verifies you are logged into the Konflux instance 2. Gets the commit SHA that the tag points to 3. Fetches the tag pipeline definition from the specified branch/fork 4. Replaces template variables with actual values for the tag 5. Creates a manual PipelineRun that uses the updated pipeline to build the tag's commit 6. Outputs the PipelineRun name for monitoring

**Examples**:

# Test main branch pipeline with v0.1.69 tag
/test-tag-pipeline v0.1.69

# Test PR branch pipeline with v0.1.69 tag
/test-tag-pipeline v0.1.69 build-gomaxprocs-image

# Test fork branch pipeline with v0.1.69 tag
/test-tag-pipeline v0.1.69 celebdor:OCPBUGS-63194-part2

**Implementation**:

IMPORTANT: Execute the commands exactly as shown with only the arguments provided by the user. If no branch argument is specified, the template `{{args.1:-main}}` will correctly default to `main`. Do NOT substitute the current git branch or any other inferred values.

Step 1: Verify authentication to Konflux

oc whoami

If the authentication check fails, inform the user they need to log in first:

oc login --web https://api.stone-prd-rh01.pg1f.p1.openshiftapps.com:6443

Step 2: Create the PipelineRun

bash hack/tools/scripts/create-manual-tag-pipelinerun.sh {{args.0}} {{args.1:-main}}

After the PipelineRun is created, extract the name from the output and construct the web UI URL:

  • Base URL: https://konflux-ui.apps.stone-prd-rh01.pg1f.p1.openshiftapps.com
  • Pattern: /ns/crt-redhat-acm-tenant/applications/hypershift-operator/pipelineruns/{pipelinerun-name}

Example: https://konflux-ui.apps.stone-prd-rh01.pg1f.p1.openshiftapps.com/ns/crt-redhat-acm-tenant/applications/hypershift-operator/pipelineruns/hypershift-operator-main-manual-v0.1.69-xxxxx

Display the full URL to the user so they can monitor progress in the web UI.

You can also monitor it from the CLI with:

# Watch the PipelineRun status
oc get pipelinerun <name> -w

Step 3: After the PipelineRun completes successfully, create a Snapshot to trigger Enterprise Contract validation:

bash hack/tools/scripts/create-snapshot-from-pipelinerun.sh <pipelinerun-name>

After the Snapshot is created, extract the snapshot name from the output and get the EC PipelineRuns:

oc get pipelinerun -l appstudio.openshift.io/snapshot=<snapshot-name> -o name

For each EC PipelineRun, construct and display the web UI URL:

  • Base URL: https://konflux-ui.apps.stone-prd-rh01.pg1f.p1.openshiftapps.com
  • Pattern: /ns/crt-redhat-acm-tenant/applications/hypershift-operator/pipelineruns/{ec-pipelinerun-name}

Example: https://konflux-ui.apps.stone-prd-rh01.pg1f.p1.openshiftapps.com/ns/crt-redhat-acm-tenant/applications/hypershift-operator/pipelineruns/hypershift-operator-enterprise-contract-xxxxx

Display the full URLs to the user so they can monitor EC validation in the web UI.

You can also monitor from the CLI with:

# Watch the snapshot status
oc get snapshot <snapshot-name> -w

# Check EC test results
oc get pipelinerun -l appstudio.openshift.io/snapshot=<snapshot-name>

**Notes**:

  • This is useful for testing pipeline fixes before merging PRs
  • The PipelineRun uses the updated pipeline definition but builds the original tag's commit
  • The two-step process allows the PipelineRun to complete (20+ minutes) before creating the Snapshot
  • Requires `yq` and `oc` CLI tools to be installed
  • See `hack/tools/scripts/create-manual-tag-pipelinerun.sh` and `hack/tools/scripts/create-snapshot-from-pipelinerun.sh` for implementation details
Read more
Ships withhypershift

HyperShift is a middleware for hosting OpenShift control planes at scale that solves for cost and time to provision, as well as portability cross cloud with strong separation of concerns between management and workloads.

Get the whole plugin

Other skills on hypershift.