Skip to content

CI checks#

Autoware has several checks for a pull request. The results are shown at the bottom of the pull request page as below.

ci-checks

If the ❌ mark is shown, click the Details button and investigate the failure reason.

If the Required mark is shown, you cannot merge the pull request unless you resolve the error. If not, it is optional, but preferably it should be fixed.

The following sections explain about common CI checks in Autoware.
Note that some repositories may have different settings.

DCO#

The Developer Certificate of Origin (DCO) is a lightweight way for contributors to certify that they wrote or otherwise have the right to submit the code they are contributing to the project.

This workflow checks whether the pull request fulfills DCO.
You need to confirm the required items and commit with git commit -s.

For more information, refer to the GitHub App page.

semantic-pull-request#

This workflow checks whether the pull request follows Conventional Commits.

For the detailed rules, see the pull request rules.

pre-commit#

pre-commit is a tool to run formatters or linters when you commit.

This workflow checks whether the pull request has no error with pre-commit.

In the workflow pre-commit.ci - pr is enabled in the repository, it will automatically fix errors by pre-commit.ci as many as possible.
If there are some errors remain, fix them manually.

You can run pre-commit in your local environment by the following command:

pre-commit run -a

Or you can install pre-commit to the repository and automatically run it before committing:

pre-commit install

Since it is difficult to detect errors with no false positives, some jobs are split into another config file and marked as optional.
To check them, use the --config option:

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

spell-check-differential#

This workflow detects spelling mistakes using CSpell with our dictionary file.
You can submit pull requests to tier4/autoware-spell-check-dict to update the dictionary.

Since it is difficult to detect errors with no false positives, it is an optional workflow, but it is preferable to remove spelling mistakes as many as possible.

build-and-test-differential#

This workflow checks colcon build and colcon test for the pull request.
To make the CI faster, it doesn't check all packages but only modified packages and the dependencies.

build-and-test-differential-self-hosted#

This workflow is the ARM64 version of build-and-test-differential.
You need to add the ARM64 label to run this workflow.

For reference information, since ARM machines are not supported by GitHub-hosted runners, we use self-hosted runners prepared by the AWF.
For the details about self-hosted runners, refer to GitHub Docs.

deploy-docs#

This workflow deploys the preview documentation site for the pull request.
You need to add the deploy-docs label to run this workflow.