GitLab CI/CDでBencherを使用する方法
あなたのユースケースに応じて、次のためにGitLab CI/CDで継続的ベンチマーキングを設定できます:
🐰 APIトークンを作成して、 それを
BENCHER_API_TOKEN
という名前のマスクされた変数として設定しておくことを忘れないでください!あなたのリポジトリ -> 設定 -> CI/CD -> 変数 -> 展開 -> 変数を追加
に進んでください。 変数のキーはBENCHER_API_TOKEN
であり、変数の値はあなたのAPIトークンである必要があります。変数を保護する
と変数をマスクする
の両方のチェックボックスを選択してください。
ターゲットブランチ
統計的連続ベンチマーキングの基石は、ターゲットブランチの歴史的基準を持つことです。 この歴史的基準を使用して、マージリクエスト内のパフォーマンスの退行を検出することができます。
- GitLab CI/CDファイルを作成します。
(例:
.gitlab-ci.yml
) - GitLab CI/CDジョブを作成します。
(例:
benchmark_target_branch
) - パイプラインが
main
ブランチへのpush
によってトリガーされた場合に実行します。 GitLab CI/CDrules
ドキュメントと GitLab CI/CD定義済み変数のドキュメントを完全に概観する。 (例:rules: - if: ...
) - ジョブが実行される
image
を設定します。 GitLab CI/CDimage
ドキュメントを参照してください。 (例:image: debian:bullseye
) - 便利なスクリプトを使用してBencher CLIをインストールします。
(例:
before_script: ...
) bencher run
CLIサブコマンドを使用してmain
ブランチのベンチマークを実行します。 thebencher run
CLI subcommand を完全に概観する。 (例:bencher run
)--project
オプションをプロジェクトスラグに設定します。 the--project
docsを詳しく見る。 (例:--project save-walter-white-1234abcd
)--token
オプションをマスクされたBENCHER_API_TOKEN
環境変数に設定します。 the--token
docsを詳しく見る。 (例:--token "$BENCHER_API_TOKEN"
)--branch
オプションをブランチ名に設定します。 branch selectionを完全に概観する。 (例:--branch main
)--testbed
オプションをテストベッド名に設定します。 これは、image
で選択したマシンと一致することが望ましいです。 the--testbed
docsを詳しく見る。 (例:--testbed debian:bullseye
)- 希望するベンチマークハーネスアダプターを
--adapter
オプションに設定します。 benchmark harness adaptersを完全に概観する。 (例:--adapter json
) - アラートが生成された場合にコマンドを失敗させるために
--err
フラグを設定します。 Threshold & Alertsを完全に概観する。 (例:--err
) - ベンチマークコマンド引数を指定します。
benchmark commandを完全に概観する。
(例:
bencher mock
)
マージリクエスト
マージリクエストでパフォーマンス回帰を検出するためには、MR上でベンチマークを実行する必要があります。 以下の例は、同じリポジトリ内のブランチにのみ使用してください。
- GitLab CI/CDファイルを作成または更新します。
(例:
.gitlab-ci.yml
) - GitLab CI/CDジョブを作成します。
(例:
benchmark_mr_branch
) - パイプラインが
merge_request_event
によってトリガーされた場合にif
を実行します。 GitLab CI/CDrules
ドキュメントおよび GitLab CI/CD事前定義変数ドキュメントを参照してください。 (例:rules: - if: ...
) - ジョブが実行される
image
を設定します。 GitLab CI/CDimage
ドキュメントを参照してください。 (例:image: debian:bullseye
) - 便利なスクリプトを使用してBencher CLIをインストールします。
(例:
before_script: ...
) bencher run
CLIサブコマンドを使用してマージリクエストブランチのベンチマークを実行します。bencher run
CLIサブコマンドに関する完全な概要を参照してください。 (例:bencher run
)--project
オプションをプロジェクトスラッグに設定します。--project
ドキュメントを詳しく見てください。 (例:--project save-walter-white-1234abcd
)--token
オプションをマスクされたBENCHER_API_TOKEN
環境変数に設定します。--token
ドキュメントを詳しく見てください。 (例:--token "$BENCHER_API_TOKEN"
)--branch
オプションをGitLab CI/CD事前定義変数を使用してMRブランチ名に設定します。 ブランチ選択の詳細を参照してください。 (例:--branch "$CI_COMMIT_REF_NAME"
)- GitLab CI/CD事前定義変数を使用して
MRターゲットブランチの開始地点に
--branch-start-point
オプションを設定します。 ブランチ選択の詳細を参照してください。 (例:--branch-start-point "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME"
) - GitLab CI/CD事前定義変数を使用して
MRターゲットブランチの開始地点ハッシュに
--branch-start-point-hash
オプションを設定します。 ブランチ選択の詳細を参照してください。 (例:--branch-start-point-hash "$CI_MERGE_REQUEST_TARGET_BRANCH_SHA"
) --testbed
オプションをテストベッド名に設定します。 これはimage
で選択されたマシンと一致する必要があります。--tested
ドキュメントを詳しく見てください。 (例:--testbed debian:bullseye
)--adapter
オプションを望ましいベンチマークハーネスアダプタに設定します。 ベンチマークハーネスアダプターの完全な概要を参照してください。 (例:--adapter json
)- 警告が生成された場合にコマンドの失敗を意味する
--err
フラグを設定します。 しきい値とアラートの完全な概要を参照してください。 (例:--err
) - ベンチマークコマンド引数を指定します。
ベンチマークコマンドの完全な概要を参照してください。
(例:
bencher mock
)
🐰 おめでとうございます!GitLab CI/CDでBencherを使用する方法を学びました!🎉
続けてください:ベンチマーキング概要 ➡
🤖 このドキュメントは OpenAI GPT-4 によって自動的に生成されました。 正確ではない可能性があり、間違いが含まれている可能性があります。 エラーを見つけた場合は、GitHub で問題を開いてください。.