rhdh-prow-release-branch について
`redhat-developer/rhdh` のリリースブランチで Prow CI 設定を有効化または削除するスキルです。ローカル設定とジョブ生成の更新を案内し、バージョン固有の設定確認と公開手順の承認を求めます。
主な機能
- 01リリースブランチの CI 設定追加
- 02サポート終了ブランチの CI 設定削除
- 03make update による設定更新
- 04リリース固有の値の確認
- 05コミット、プッシュ、PR の管理
活用シーン
- 01新しいリリースブランチの CI 設定
- 02サポート終了ブランチの CI 削除
- 03生成された Prow ジョブファイルの確認
- 04破壊的な削除前のロールバック計画
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ redhat-developer/ rhdh-skills --skill rhdh-prow-release-branchインストール後、Claude Code で/rhdh-prow-release-branchを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/release-branch-config.mdworkflows/commission-release.mddecommission-release.md詳細
RHDH リリースブランチの Prow 設定
openshift/release 内の redhat-developer/rhdh の 1 つの release-{version} ブランチについて、CI 設定を有効または無効にします。どちらの操作も最後に make update を実行するため、ローカルチェックアウトが必要です。
このスキルの対象は Prow 設定であり、製品のリリースではありません。リリースに対してオープンになっている内容は /rhdh-release-status、マイルストーンの日付は /rhdh-release-schedule、フリーズの告知は /rhdh-release-announce を参照してください。すでにジョブがあるブランチの個別のテスト項目やクラスタープールについては、/rhdh-prow-jobs を参照してください。
手順
| 意図 | 読み込むファイル |
|---|---|
| 新しいリリースブランチの CI 設定を作成する | workflows/commission-release.md |
| サポート終了となるリリースブランチの CI 設定を削除する | workflows/decommission-release.md |
references/release-branch-config.md には、両方のワークフローで使用するファイルパス、リリースと main の相違点、Slack アラートの設定が記載されています。読み込んだワークフローとあわせて、このファイルも読んでください。
ローカルでの準備と公開
ローカルのレビュー用ブランチの作成、設定のコピーまたは削除、_prowconfig.yaml の編集、make update の実行は、ユーザーからの有効化または無効化の依頼で承認されたローカルでの準備作業です。書き込み前の承認ゲートなしで、これらのローカル変更を行い、検証してください。
コミット、プッシュ、プルリクエストの作成に限り、/mutation-gate に従ってください。これらは順序どおりに実行する一連の公開作業として扱い、レビューしたすべてのパスと外部の対象を明示してください。先行する操作が失敗した場合は、その後の各操作を開始する前に停止してください。
- ブランチ保護のブロックやリリースブランチ向けの調整をハードコードしないでください。最新の既存リリースブランチを確認し、現在の構成をコピーしてください。必須のステータスチェックコンテキストや事前送信テストの設定は、時間とともに変わります。
- 最終確定前に、バージョン固有の値をユーザーに確認してください。対象に含める OCP テスト項目、
MAPT_KUBERNETES_VERSION、OSD のバージョン、releases.latest.release、build_rootタグが該当します。 - 無効化は破壊的な操作です。削除するすべてのファイルとブロック、およびロールバック方法を明示してから、削除してください。
- Slack チャンネル、その受信用 Webhook、Vault キー
SLACK_ALERTS_WEBHOOK_URL_{X}_{Y}は、リポジトリ外で人が行う手順です。ユーザーに実施を依頼してください。reporter_config.channelが存在しないチャンネルを指している間は、設定変更が完了したものとして扱わないでください。
完了条件
有効化は、ci-operator/config/redhat-developer/rhdh/redhat-developer-rhdh-release-{version}.yaml が存在し、zz_generated_metadata.branch が release-{version} に設定され、リファレンスに記載されたリリースブランチ向けの調整が適用され、release-{version} のブランチ保護エントリーが _prowconfig.yaml 内でバージョン順に配置され、make update が実行され、生成された ci-operator/jobs/redhat-developer/rhdh/redhat-developer-rhdh-release-{version}-*.yaml ファイルが名前付きで列挙されているときに完了です。Slack チャンネルと Vault キーの状態を明記し、redhat-developer/rhdh 自体に release-{version} ブランチが作成されるまでジョブは実行されないことを記載してください。
無効化は、設定ファイルが削除され、_prowconfig.yaml から release-{version} のブロックが周囲のインデントを保って削除され、make update によって生成済みのジョブファイルが削除され、削除したすべてのファイルとブロックがロールバック方法とあわせて明記されているときに完了です。どちらの場合も、プッシュとプルリクエストの状態を明示し、「プッシュしていない」場合もそのように記載してください。