Skip to content

CIチェック#

Autoware には、プルリクエストに対していくつかのチェックがあります。 結果は以下のようにプルリクエストページの下部に表示されます。

ci-checks

❌マークが表示されている場合は、Detailsボタンをクリックして失敗の原因を調査してください。

Requiredマークが表示されている場合は、エラーを解決しない限りプルリクエストをマージできません。 そうでない場合はオプションですが、できれば修正する必要があります。

次のセクションではAutowareの一般的なCIチェックについて説明します。
一部のリポジトリでは設定が異なる場合があることに注意してください。

DCO#

開発者証明書(DCO)は、貢献者がプロジェクトに貢献しているコードを作成したこと、またはそのコードを提出する権利を持っていることを証明するための軽量な方法です。

このワークフローは、プルリクエストがDCOを満たすかどうかをチェックします。
必要な項目を確認してgit commit -sでコミットする必要があります。

詳細についてはGitHubアプリページを参照してください。

セマンティックプルリクエスト#

このワークフローはプルリクエストが従来のコミットに従っているかどうかをチェックします。

詳しいルールについてはプルリクエストのルールをご覧ください。

事前コミット#

pre-commitはコミット時にフォーマッタまたはリンターを実行するツールです。

このワークフローは、プルリクエストにpre-commitでエラーがないかどうかをチェックします。

ワークフローでは、リポジトリでpre-commit.ci - prが有効になっており、pre-commit.ciによって可能な限り多くのエラーが自動的に修正されます。
エラーが残っている場合は、手動で修正してください。

次のコマンドを使用して、ローカル環境でpre-commitを実行できます:

pre-commit run -a

もしくはpre-commitをリポジトリにインストールし、コミット前に自動で実行することができます:

pre-commit install

誤検知のないエラーを検出することは難しいため、一部のジョブは別の構成ファイルに分割され、オプションとしてマークされています。
それらを確認するには、--configオプションを使用します:

pre-commit run -a --config .pre-commit-config-optional.yaml

スペルチェックの差分#

このワークフローは辞書ファイルを用いたCSpellとを使用してスペルミスを検出します。 誤検知のないエラーを検出することは難しいため、オプションのワークフローですが、スペルミスはできるだけ削除することが望ましいです。

辞書に登録されていない単語を使用する場合は、以下の選択肢があります。

ビルドとテストの差分#

このワークフローは、プル リクエストのcolcon buildcolcon testをチェックします。
CIを高速化するために、すべてのパッケージをチェックするのではなく、変更されたパッケージと依存関係のみをチェックします。

自己ホスト型のビルドとテストの差分#

このワークフローはbuild-and-test-differentialARM64バージョンです。
このワークフローを実行するにはARM64ラベルを追加する必要があります。

参考までに、ARMマシンはGitHubホストランナーではサポートされていないため、AWFが用意したセルフホストランナーを使用します。 セルフホストランナーの詳細についてはGitHubドキュメントを参照してください。

デプロイドキュメント#

このワークフローは、プルリクエストのプレビュードキュメントサイトをデプロイします。
このワークフローを実行するには、deploy-docsラベルを追加する必要があります。