David Marchand <david.march...@redhat.com> writes: > Let's prune the jobs list to limit the amount of time spent by the robot > in Travis. > > Since meson enables automatically the relevant components, there is not > much gain in testing with extra_packages vs required_packages only. > > For a given arch/compiler/env combination, compilation is first tested > in all jobs that run tests or build the docs or run the ABI checks. > In the same context, for jobs that accumulates running tests, building > the docs etc..., those steps are independent and can be split to save > some cpu on Travis. > > With this, we go down from 21 to 15 jobs. > > Note: this patch requires a flush of the existing caches in Travis. > > Signed-off-by: David Marchand <david.march...@redhat.com> > ---
In general, I think the idea with required vs. extra was to have a build that did the minimum required, and one that did all the packages (to allow a minimum vs. full DPDK). At least, that's from http://mails.dpdk.org/archives/dev/2019-January/124007.html Not sure if that's still something anyone cares about. > .travis.yml | 51 +++++++++------------------------------------------ > 1 file changed, 9 insertions(+), 42 deletions(-) > > diff --git a/.travis.yml b/.travis.yml > index c174d5f30..b64a81bd0 100644 > --- a/.travis.yml > +++ b/.travis.yml > @@ -15,15 +15,12 @@ addons: > update: true > packages: &required_packages > - [libnuma-dev, python3-setuptools, python3-wheel, python3-pip, > ninja-build] > + - [libbsd-dev, libpcap-dev, libibverbs-dev, libcrypto++-dev, > libfdt-dev, libjansson4] > > _aarch64_packages: &aarch64_packages > - *required_packages > - [gcc-aarch64-linux-gnu, libc6-dev-arm64-cross, > pkg-config-aarch64-linux-gnu] > > -_extra_packages: &extra_packages > - - *required_packages > - - [libbsd-dev, libpcap-dev, libibverbs-dev, libcrypto++-dev, libfdt-dev, > libjansson4] > - > _libabigail_build_packages: &libabigail_build_packages > - [autoconf, automake, libtool, pkg-config, libxml2-dev, libdw-dev] > > @@ -43,66 +40,39 @@ jobs: > - env: DEF_LIB="static" > arch: amd64 > compiler: gcc > - - env: DEF_LIB="shared" > - arch: amd64 > - compiler: gcc > - env: DEF_LIB="shared" RUN_TESTS=1 > arch: amd64 > compiler: gcc > - - env: DEF_LIB="static" EXTRA_PACKAGES=1 > - arch: amd64 > - compiler: gcc > - addons: > - apt: > - packages: > - - *extra_packages > - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 RUN_TESTS=1 BUILD_DOCS=1 > + - env: DEF_LIB="shared" BUILD_DOCS=1 > arch: amd64 > compiler: gcc > addons: > apt: > packages: > - - *extra_packages > + - *required_packages > - *doc_packages > - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 ABI_CHECKS=1 > + - env: DEF_LIB="shared" ABI_CHECKS=1 > arch: amd64 > compiler: gcc > addons: > apt: > packages: > - - *extra_packages > + - *required_packages > - *libabigail_build_packages > # x86_64 clang jobs > - env: DEF_LIB="static" > arch: amd64 > compiler: clang > - - env: DEF_LIB="shared" > - arch: amd64 > - compiler: clang > - env: DEF_LIB="shared" RUN_TESTS=1 > arch: amd64 > compiler: clang > - - env: DEF_LIB="static" EXTRA_PACKAGES=1 > - arch: amd64 > - compiler: clang > - addons: > - apt: > - packages: > - - *extra_packages > - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 > - arch: amd64 > - compiler: clang > - addons: > - apt: > - packages: > - - *extra_packages > - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 RUN_TESTS=1 BUILD_DOCS=1 > + - env: DEF_LIB="shared" BUILD_DOCS=1 > arch: amd64 > compiler: clang > addons: > apt: > packages: > - - *extra_packages > + - *required_packages > - *doc_packages > # x86_64 cross-compiling 32-bits jobs > - env: DEF_LIB="static" BUILD_32BIT=1 > @@ -131,9 +101,6 @@ jobs: > - env: DEF_LIB="static" > arch: arm64 > compiler: gcc > - - env: DEF_LIB="shared" > - arch: arm64 > - compiler: gcc > - env: DEF_LIB="shared" BUILD_DOCS=1 > arch: arm64 > compiler: gcc > @@ -142,13 +109,13 @@ jobs: > packages: > - *required_packages > - *doc_packages > - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 ABI_CHECKS=1 > + - env: DEF_LIB="shared" ABI_CHECKS=1 > arch: arm64 > compiler: gcc > addons: > apt: > packages: > - - *extra_packages > + - *required_packages > - *libabigail_build_packages > # aarch64 clang jobs > - env: DEF_LIB="static"