[dpdk-ci] [PATCH] ci: added patch parser for patch files
Aaron Conole
aconole at redhat.com
Thu Apr 15 22:38:29 CEST 2021
Owen Hilyard writes:
> This commit contains a script, patch_parser.py, and a config file,
> patch_parser.cfg. These are tooling that the UNH CI team has been
> testing in order to reduce the number of tests that need to be run
> per patch. This resulted from our push to increase the number of
> functional tests running in the CI. While working on expanding test
> coverage, we found that DTS could easily take over 6 hours to run, so
> we decided to begin work on tagging patches and then only running the
> required tests.
>
> The script works by taking in an address for the config file and then
> a list of patch files, which it will parse and then produce a list of
> tags for that list of patches based on the config file. The config file
> is designed to work as a mapping for a base path to a set of tags. It
> also contains an ordered list of priorities for tags so that this may
> also be used by hierarchical tools rather than modular ones.
>
> The intention of the UNH team with giving this tooling to the wider
> DPDK community is to have people more familiar with the internal
> functionality of DPDK provide most of the tagging. This would allow
> UNH to have a better turn around time for testing by eliminating
> unnecessary tests, while still increasing the number of tests in the
> CI.
>
> The different patch tags are currently defined as such:
>
> core:
> Core DPDK functionality. Examples include kernel modules and
> librte_eal. This tag should be used sparingly as it is intended
> to signal to automated test suites that it is necessary to
> run most of the tests for DPDK and as such will consume CI
> resources for a long period of time.
>
> driver:
> For NIC drivers and other hardware interface code. This should be
> used as a generic tag with each driver getting it's own tag.
>
> application:
> Used in a similar manner to "driver". This tag is intended for
> code used in only in applications that DPDK provides, such as
> testpmd or helloworld. This tag should be accompanied by a tag
> which denotes which application specifically has been changed.
>
> documentation:
> This is intended to be used as a tag for paths which only contain
> documentation, such as "doc/". It's intended use is as a way to
> trigger the automatic re-building of the documentation website.
>
> Signed-off-by: Owen Hilyard <ohilyard at iol.unh.edu>
> ---
Applied to dpdk-ci.git
Thanks!
More information about the ci
mailing list