zephyr/scripts/ci
Anas Nashif 5c24fcb4ae actions: run twister using github action
This action replaces current buildkite workflow and uses github actions
to build and run tests in the zephyr tree using twister. The main
differences to current builtkite workflow:

- the action handles all 3 events: pull requests, push and schedule

- the action determines size of matrix (number of build hosts) based on
  the change with a minimum of 1 builder. If more tests are built/run
  due to changes to boards or tests/samples, the matrix size is
  increased. This will avoid timeouts when running over capacity due to
  board/test changes.

- We use ccache and store cache files on amazon S3 for more flexibility

- Results are collected per build host and merged in the final step and
  failures are posted into github action check runs.

- It runs on more powerful instances that can handle more load.
  Currently we have 10 build hosts per run (that can increase depending
  on number of tests run) and can deliver results within 1 hour.

- the action can deal with non code changes and will not allocate more
  than required to deal with changes to documentation and other files
  that do not require running twister

The goal long-term is better integrate this workflow with other actions
and not run unncessarily if other workflows have failed, for example, if
commit message is bogus, we should stop at that check, to avoid wasting
resources given that the commit message will have to be fixed anyways
which would later trigger another run on the same code.

Currently there is 1 open issue with this action related to a github
workflow bug where the final results are not posted to the same workflow
and might appear under other workflows. Github is working on this bug.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-11-23 06:42:23 -05:00
..
check_compliance.py scripts: check_compliance should not generate soc/shield Kconfig files 2021-09-23 11:27:41 -04:00
errno.py ci: Add an errno.h check to CI 2021-05-17 09:11:15 -04:00
get_twister_opt.py ci: hotfix: disable test exclusion by tags 2021-11-10 22:37:21 -05:00
guideline_check.py ci: disable identifier_length scripts for now 2021-05-06 14:45:03 -04:00
pylintrc ci: pylint: relax similar lines rule 2021-04-13 16:33:18 -05:00
run_ci.sh actions: run twister using github action 2021-11-23 06:42:23 -05:00
tags.yaml ci/tags.yaml: Add entries for a few different tags 2021-06-24 12:38:57 -05:00
twister_ignore.txt ci: do not run twister on footprint script changes 2021-10-29 12:26:36 -04:00
version_mgr.py test_version: update tset version with 12 digits 2021-01-10 17:00:17 -05:00
what_changed.py ci: rename sanitycheck -> twister 2020-12-11 14:13:02 -05:00