Open nashif opened 8 years ago
by Inaky Perez-Gonzalez:
output of ZEP-770 is needed for completing this, but does not fully block it.
by Javier B Perez:
Inaky Perez-Gonzalez what about something like these as template for structure:
.ini file
# Structure
# [Block name]
# tags: space-separated list of tags
# ext: space-separated list of file extensions (default all)
# files: line-separated list of files to check for changes. Can take python regex
# args: extra args to pass to sanity (optional)
# lines with "#" are ignored
# Documentation components
[Kconfig Doc]
# make -C doc/ kconfig
tags: bat_kconfig_doc
files:
*kconfig*
[Doxy Doc]
# make -C doc/ doxy
tags: bat_doxy_doc
ext: .c .h .S
# included list taken from doc/doxygen.config
files:
include/
include/misc/
include/arch/x86/
include/arch/arc/
include/arch/arc/v2
include/arch/arm/
include/arch/arm/cortex_m/
include/arch/nios2/
lib/libc/minimal/include/
ext/lib/crypto/tinycrypt/include/
lib/iot/zoap/zoap.h
tests/ztest/include/
[Rest Doc]
# make -C doc/ htmldocs
# this includes kconfig and doxy
tags: bat_rest_doc
files:
doc/
# ARCH
[ARM ARCH]
# sanitycheck --tag kernel_core --arch arm
tags: kernel_core
args: --arch arm
files:
arch/arm
Related to GH-104
Reported by Inaky Perez-Gonzalez: Given a diff file into the Zephyr tree, produce in the standard output a list of tags that will identify a list of test cases to run.
This is heavily related to ZEP-770
This will allow that given a commit (or mashup of commits), we can identify the minimal set of test cases we want to run instead of running all.
This shall identify, for example:
https://gerrit.zephyrproject.org/r/gitweb?p=zephyr.git;a=patch;h=a3d3659c753b9363d3b219de3358ff2717fb31d2: only touches the doc tree, so the output for this would be:
Indicating the _batdoc tag is emitted because a change to the file doc/doxygen.config
https://gerrit.zephyrproject.org/r/gitweb?p=zephyr.git;a=patch;h=907d986d2983bdeb6f0c7e6c5c6ede0f74ee4825: this only touches inside the arch/arm tree, so it'd emit _archarm; however, because it touches arch/arm/core (the core ARM kernel), it does _subsys_kernelcore to select all the kernel testcases
Note the output format is basically:
FIXME: need to figure out how to have it also add some kind of target selector like:
As well, it is acumulative. If PATCH1 produces OUTPUT1
and PATCH2 produces OUTPUT2:
concatenating OUTPUT1 and OUTPUT2 and feeding it ot the script produces:
This script shall:
(Imported from Jira INF-76)