DistributionチームのRenovate利用方法
共通リンク
はじめに
私たちは外部リポジトリを監視し、アップグレードがリリースされたときに適切なプロジェクトへのマージリクエストを開くためにRenovateを使用しています。
現在これを使用しているプロジェクトは以下のとおりです:
リポジトリのすべての依存関係はRenovate botリポジトリで定義されています。
マージリクエストの処理
プロジェクトへのマージリクエストが作成されると、RenovateはReviewer Rouletteを使用してレビュアーをアサインします。
マージリクエストを適時に処理することはDistributionチーム全員の責任です。チームメンバーは、担当可能なマージリクエストに取り組む際は、他のアサインを削除して自分自身をアサインします。チームメンバーはアップグレードのための適切なマイルストーンを決定し、新しいソフトウェアバージョンが期待通りに動作するかを検証する必要があります。問題がなければ、changelogエントリを追加してマージリクエストをメンテナーにアサインします。
omnibus-gitlab
マージリクエストのパイプラインはトリガーされたパイプラインを実行し、パッケージをビルドしてパッケージに対してgitlab-qaを実行します。ソフトウェアによっては手動テストが必要な場合があります。満足できる状態になったら、changelogエントリを作成し、マージリクエストをメンテナーにアサインします。
CNG
パイプラインは必要なソフトウェアを使用して新しいイメージセットをビルドします。helmチャートのインスタンスを起動し、そのインスタンスに対してテストを実施します。完了したら、MRをメンテナーにアサインしてマージしてもらいます。
charts/gitlab
パイプラインはチャートのレビューアプリバージョンをインストールし、specテストとQAテストの両方がレビューアプリに対して実行されます。ソフトウェアによっては手動テストが必要な場合があります。満足できる状態になったら、changelogエントリを作成し、マージリクエストをメンテナーにアサインします。
Renovateのデバッグ
Renovateをデバッグするには、MRパイプラインによって生成されたログとアーティファクトを確認します。 このマージリクエストに例があります。
Renovateのローカルデバッグ
パイプラインは実行に時間がかかるため、より速いフィードバックを得るためにRenovateをローカルでデバッグすると便利です。
ローカルでテストする方法を説明したスニペットがあります。
追加情報
- Distribution: Renovate GitLab Bot 101に追加情報があります。
- 新しい依存関係を追加するための具体的な手順はRenovate GitLabドキュメントにあります。
