Skip to content

Continuous Integration

hakehuang edited this page Dec 16, 2020 · 9 revisions

Zephyr uses a continuous integration service to verify pull requests and the health of various project tree on a continuous basis. On every pull request submitted to enabled projects, we run tests and report status that helps maintainers (administrators and members with merge permissions) decide whether to merge the pull request into the tree.

Pull Requests

At the moment we run the following tests:

  • Check commit message style using gitlint
  • Check patches for style using checkpatch
  • Check for new documentation warnings and errors
  • Run basic sanitycheck using a pre-defined set of boards and configurations

All tests are executed to completion, meaning that the tests continue to run even if one or many fail. The results of tests are reported with all logs and errors message on the CI status page. On a a Linux system you can run scripts/twist locally. To run all the other tests clone https://github.com/zephyrproject-rtos/ci-tools/ and run scripts/check_compliance.py

Daily Checks

On a daily basis we run the following set of tests:

  • twist with the following options: --all --enable-slow --inline-logs
  • twist with the following options: --all --enable-slow --inline-logs -R

Additionally we generate the documentation for the master branch on a daily basis and post the newly generated HTML output to the website.

Board Testing Intro

HOW TOs

Clone this wiki locally