Create Pull Request
SkillDev toolsCreate pull requests for konflux-ci repository. Explains CI behavior differences between fork and same-repo PRs, and the /allow command. Use when creating a PR, CI not running, or asking about fork PRs.
Then ask your AI: use the Create Pull Request skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add it as a step in a pipeline you build on Ahel, or connect Ahel to Claude, ChatGPT, Cursor, Claude Code or Codex and ask your AI to use it.
What this skill tells your AI
The instructions your AI receives, as published by konflux-ci/konflux-ci in skills/create-pr/SKILL.md and read by Ahel’s review.
CI Behavior
| PR Source | E2E Tests | Trigger |
|---|---|---|
| Same-repo branch | Automatic | Push |
| Fork | Manual | Org member comments /allow <commit-sha> |
Fork PRs cannot access secrets. The /allow <commit-sha> command:
- Verifies the provided SHA is a valid commit hash (not a branch/tag)
- Verifies the SHA matches the current PR HEAD (prevents approving stale code)
- Verifies code hasn't changed since comment (TOCTOU check)
- Triggers E2E via
repository_dispatch
See .github/workflows/operator-test-e2e.yaml (check-prerequisites job) and .github/workflows/pr-comment-commands.yaml.
PRs trigger:
operator-test—go mod tidy -diff+make test, uploads coverageoperator-lint— golangci-lint (version is the single semver line inoperator/.golangci-lint-version; do not add comments or extra lines)operator-verify-generated-files— CRDs/RBAC/deepcopy must be up to date (make manifests generateafter API or RBAC marker changes)operator-test-e2e— full operator e2e (fork PRs need/allow <commit-sha>)operator-olm-kind-smoke— Kind + OLMoperator-sdk run bundle(ARM64; non-default namespace to match preflight)kube-linter— rendered kustomize manifestscheck-toc— markdown TOC (excludesoperator/docs/,.cursor/*,skills/*)differential-shellcheck— changed shell scriptscaddy-fmt— only whenCaddyfilechanges
Before Creating a PR: Check Write Access
Always check if the user has upstream write access before choosing a workflow.
# Check if user can push to upstream
gh repo view konflux-ci/konflux-ci --json viewerPermission --jq '.viewerPermission'
# WRITE or ADMIN = has access, READ = no access
If user has write access → push to upstream (CI runs automatically)
If user does NOT have write access → push to fork (needs /allow <commit-sha>)
Workflow
With upstream write access (preferred):
git checkout -b feature-branch
git push -u upstream feature-branch
gh pr create --repo konflux-ci/konflux-ci
Without write access (fork):
- Fork and clone
- Push to fork, open PR against
konflux-ci/konflux-ci - Wait for maintainer
/allow <commit-sha>
Pre-PR Checklist
From CONTRIBUTING.md:
-
KubeLinter (if editing kustomizations):
mkdir -p .kube-linter find . -name "kustomization.yaml" -o -name "kustomization.yml" | while read -r file; do dir=$(dirname "$file"); dir=${dir#./} kustomize build "$dir" > ".kube-linter/out-$(echo "$dir" | tr "/" "-").yaml" done kube-linter lint .kube-linter -
Table of contents (if markdown structure changed): See
CONTRIBUTING.mdfor the exact command. -
make manifests generate(fromoperator/, if API types or RBAC markers changed).
Troubleshooting
CI not running on fork PR: Normal - wait for /allow <commit-sha> from maintainer.
E2E failed after /allow: Code changed after /allow. Maintainer must re-review and /allow <commit-sha> again.
Signals
- GitHub stars
- 197
- Forks
- 162
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
create-pr-konflux-ci- Source
- github.com/konflux-ci/konflux-ci
github.com/konflux-ci/konflux-ci
Related picks
Skill · larksuite
The pick for Markdownmarkdown-formatter
Skill · nvidia
The pick for Markdowne2e-testing
Skill · thedaviddias
The pick for End-to-end testinge2e-environment-preflight
Skill · sno-ai
The pick for End-to-end testinggolang-code-style
Skill · samber
The pick for Godbos-golang
Skill · sickn33
The pick for Go