summaryrefslogtreecommitdiff
path: root/.ci
AgeCommit message (Collapse)Author
2024-02-01build: make more libraries optionalBruce Richardson
Remove five more libs from the mandatory build list. Only one needing any special treatment is LPM, which is an optional dependency for some secondary process autotests. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Morten Brørup <mb@smartsharesystems.com>
2023-11-28version: 24.03-rc0David Marchand
Start a new release cycle with empty release notes. Bump version and ABI minor. Bump libabigail from 2.1 to 2.4 and enable ABI checks. Signed-off-by: David Marchand <david.marchand@redhat.com>
2023-11-10ci: allow use of DPDK tools when building examplesBruce Richardson
To allow use of the DPDK python scripts (installed in $(prefix)/bin) from within the makefiles of our examples, we need to export the PATH variable with the location of our installed scripts from within our CI scripts. This matches what is already done for other paths e.g. the PKG_CONFIG_PATH variable. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Reviewed-by: Aaron Conole <aconole@redhat.com> Signed-off-by: David Marchand <david.marchand@redhat.com>
2023-10-17ci: test stdatomic APIDavid Marchand
Add some compilation tests with C11 atomics enabled. The headers check can't be enabled (as gcc and clang don't provide stdatomic before C++23). Signed-off-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Aaron Conole <aconole@redhat.com>
2023-08-23build: select deprecated librariesDavid Marchand
Rework deprecated libraries selection by introducing a new configuration option. This breaks existing configurations that were relying on disable_libs='' for enabling deprecated libraries. On the other hand, it will make enabling optional libraries more straightforward by taking the deprecated libraries out of the picture. Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Aaron Conole <aconole@redhat.com>
2023-06-28doc: prefer installing using Meson rather than NinjaBruce Richardson
After doing a build, to install DPDK system-wide our documentation recommended using the "ninja install" command. However, for anyone building as a non-root user and only installing as root, the "meson install" command is a better alternative, as it provides for automatically dropping or elevating privileges as necessary in more recent meson releases [1]. [1] https://mesonbuild.com/Installing.html#installing-as-the-superuser Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2023-06-22ci: build examples externallyDavid Marchand
Enhance our CI coverage by building examples against an installed DPDK. Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Aaron Conole <aconole@redhat.com>
2023-03-28devtools: stop depending on libabigail XML formatDavid Marchand
An ABI reference depends on: - DPDK build options, - toolchain compiler and versions, - libabigail version. The reason for the latter point is that, when the ABI reference was generated, ABI xml files were dumped in a format depending on the libabigail version. Those xml files were then later used to compare against modified code. There are a few disadvantages with this method: - since the xml files are dependent on the libabigail version, when updating CI environments, a change in the libabigail package requires regenerating the ABI references, - comparing xml files with abidiff is not well tested, as we (DPDK) uncovered bugs in libabigail that were not hit with comparing .so, Switch to comparing .so directly, remove this dependence and update GHA script. Signed-off-by: David Marchand <david.marchand@redhat.com>
2023-03-20ci: test compilation with debug in GHADavid Marchand
We often miss compilation issues with -O0 -g. Switch to debug in GHA for the gcc job. Signed-off-by: David Marchand <david.marchand@redhat.com>
2022-12-21ci: drop Travis configurationDavid Marchand
We stopped using Travis in the main branch and in the public CI in favor of GHA more than a year ago. The UNH community lab now covers testing native compilation and unit tests for ARM platforms. We decided to stop maintaining the configuration in our repository with the argument that "if it is not tested, it is broken". Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Ferruh Yigit <ferruh.yigit@amd.com> Acked-by: Aaron Conole <aconole@redhat.com>
2022-12-08devtools: update Meson setup commandThomas Monjalon
The command "meson build" causes a deprecation warning with meson 0.64: WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated. Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Reviewed-by: David Marchand <david.marchand@redhat.com> Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Aaron Conole <aconole@redhat.com>
2022-10-27ci: combine static and shared linking build testsDavid Marchand
Save some cpu time and disk by testing linking against static and shared library in single environments. The .ci/linux-build.sh is modified so it reconfigures an existing build directory: an empty DEF_LIB= means that static and shared builds are to be tested. ABI checks, documentation generation and unit tests are disabled for static builds as they would be redundant with the check against dynamically linked binaries, if any. Note: - --cross-file is an option that can be passed to meson only when creating a build environment, - for some other reason, --buildtype and other non -D options are only accepted when setting up a build directory with meson. When reconfiguring, only their -D$option forms are accepted, Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Aaron Conole <aconole@redhat.com>
2022-10-10build: introduce deprecated librariesBruce Richardson
Add support for a list of deprecated libs to the lib/meson.build file. This will be used to mark libraries that are planned to be removed from DPDK. The first user of this will be KNI in a next patch. Deprecated libraries should still be tested in the CI, so update our build testing and CI scripts. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Signed-off-by: David Marchand <david.marchand@redhat.com>
2022-10-10build: increase minimum meson version to 0.53.2Bruce Richardson
This patchset bumps the minimum meson version from 0.49.2 to 0.53.2. Ideally, the minimum version should be 0.53 without a point release, but some DPDK builds (mingw) are broken with 0.53.0 due to issue[1], fixed by commit[2] in 0.53.1. Therefore we use the latest point release from 0.53 branch i.e. 0.53.2. Some new features of interest which can now be used in DPDK with this new minimum meson version: * can do header-file checks directly inside find_library calls, rather than needing a separate check.[v0.50]. * can pass multiple cross-files at the same time when cross-compiling [v0.51]. * "alias_target" function, to allow use to give better/shorter names for particular build objects [v0.52]. * auto-generation of clang-format [v0.50] and clang-tidy[v0.52] targets when those tools are present and config dotfiles are present. Similarly ctags and cscope are added as targets when those tools are present [v0.53] * meson module for filesystem operations, so meson can now check for the presence of particular files or directories [v0.53]. * "summary" function to provide a configuration summary at the end of the meson run [v0.53]. Plus many other features. See [3] for full details of each version. [1] https://github.com/mesonbuild/meson/issues/6442 [2] https://github.com/mesonbuild/meson/pull/6457/commits/8e7a7c36b579 [3] https://mesonbuild.com/Release-notes.html Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: David Marchand <david.marchand@redhat.com>
2022-06-08ci: add RISC-V cross compilationStanislaw Kardach
Check cross-compilation using Ubuntu 20.04 x86. Signed-off-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
2022-05-11ci: build some job with ASanDavid Marchand
Enable ASan, this can greatly help identify leaks and buffer overflows. Running unit tests relying on multiprocess is unreliable with ASan enabled, so skip them. Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com>
2022-05-09ci: add MinGW cross-compilation in GHADavid Marchand
Add mingw cross compilation in our public CI so that users with their own github repository have a first level of checks for Windows compilation before submitting to the mailing list. This does not replace our better checks in other entities of the CI. Only the helloworld example is compiled (same as what is tested in test-meson-builds.sh). Note: the mingw cross compilation toolchain (version 5.0) in Ubuntu 18.04 was broken (missing a ENOMSG definition). Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com>
2022-05-09ci: switch to Ubuntu 20.04David Marchand
Ubuntu 18.04 is now rather old. Besides, other entities in our CI are also testing this distribution. Switch to a newer Ubuntu release and benefit from more recent tool(chain)s: for example, net/cnxk now builds fine and can be re-enabled. Note: Ubuntu 18.04 and 20.04 seem to preserve the same paths for the ARM and PPC cross compilation toolchains, so we can use a single configuration file (with the hope, future releases of Ubuntu will do the same). Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
2022-04-06ci: add Fedora 35 container in GHADavid Marchand
Build DPDK with Fedora 35 containers. GHA container support does not allow caching images and docker hub seems to limit image pulls. On the other hand, the Fedora project hub does not seem to limit them, so prefer this hub. Nevertheless, let's try to be good citizens and cache (once a day) a prepared image for subsequent builds. This preparation is done in a first prepare-container-images job. The rpm-container-builds job then depends on it with a 'needs:' tag. Differences with builds in Ubuntu GHA vm images: - tasks are run as root in containers, no need for sudo, - compiler must be explicitly installed, - GHA artifacts can't contain a ':' in their name, and must be filtered, - environment variables are not inherited and must be passed explicitly, Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com>
2022-03-01ci: remove redundant drivers enablingThomas Monjalon
No need to explicitly enable drivers bus/vdev and mempool/ring. bus/vdev is always enabled since commit 2e33309ebe03 ("config: enable/disable drivers in Arm builds") mempool/ring is always enabled since commit 81c2337e044d ("build: make ring mempool driver mandatory") The driver net/null is kept to allow running test-null.sh. Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: David Marchand <david.marchand@redhat.com>
2022-03-01ci: remove outdated default versions for ABI checkThomas Monjalon
The variables REF_GIT_TAG and LIBABIGAIL_VERSION are set in the CI configuration like .travis.yml or .github/workflows/build.yml. The default values are outdated and probably unused. The default values are removed completely to avoid forgetting an update in future. The use of the variables is quoted to make sure a missing value will trigger an appropriate failure. Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Aaron Conole <aconole@redhat.com> Acked-by: David Marchand <david.marchand@redhat.com>
2022-02-12buildtools/chkincs: test headers for C++ compatibilityBruce Richardson
Add support for checking each of our headers for issues when included in a C++ file. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2021-11-17ci: test minimum configurationDavid Marchand
Disabling drivers and optional libraries was not tested. Add a new target in test-meson-builds.sh and GHA with just the minimum to run test-null.sh and any other optional component disabled. Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Thomas Monjalon <thomas@monjalon.net>
2021-11-10ci: add ppc64le cross compilation in GHADavid Christensen
Enable Github Actions to cross-compile code for POWER systems. Signed-off-by: David Christensen <drc@linux.vnet.ibm.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
2021-11-01ci: fix aarch64 cross compilation in GHADavid Marchand
CC_FOR_BUILD is a Travis env variable. This results in GHA aarch64 cross compilation jobs building x86 binaries. Example in a recent job on main branch: 2021-10-28T09:51:06.4976495Z + .ci/linux-build.sh 2021-10-28T09:51:06.4985674Z + [ -n build ] 2021-10-28T09:51:06.4987636Z + [ true = true ] 2021-10-28T09:51:06.4987991Z + [ = gcc ] 2021-10-28T09:51:06.4989419Z + [ = clang ] 2021-10-28T09:51:06.4990907Z + [ false = true ] 2021-10-28T09:51:06.4991348Z + [ false = true ] 2021-10-28T09:51:06.4992846Z + [ static = static ] 2021-10-28T09:51:06.4993550Z + OPTS= -Dexamples=l2fwd,l3fwd 2021-10-28T09:51:06.4995388Z + OPTS= -Dexamples=l2fwd,l3fwd -Dplatform=generic 2021-10-28T09:51:06.4996279Z + OPTS= -Dexamples=l2fwd,l3fwd -Dplatform=generic --default-library=static 2021-10-28T09:51:06.4998553Z + OPTS= -Dexamples=l2fwd,l3fwd -Dplatform=generic --default-library=static --buildtype=debugoptimized 2021-10-28T09:51:06.4999949Z + OPTS= -Dexamples=l2fwd,l3fwd -Dplatform=generic --default-library=static --buildtype=debugoptimized -Dcheck_includes=true 2021-10-28T09:51:06.5002643Z + meson build --werror -Dexamples=l2fwd,l3fwd -Dplatform=generic --default-library=static --buildtype=debugoptimized -Dcheck_includes=true common/cnxk has issues with Ubuntu 18.04 cross compiler. It is a known issue (https://bugs.dpdk.org/show_bug.cgi?id=697), disable it. Fixes: 5d0b4ffa6964 ("ci: add aarch64 clang cross-compilation Travis builds") Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
2021-10-25ci: update Meson option for generic buildJuraj Linkeš
The way we're building DPDK in CI, with -Dmachine=default, has not been updated when the option got replaced to preserve a backwards-complatible build call to facilitate ABI verification between DPDK versions. Update the call to use -Dplatform=generic, which is the most up to date way to execute the same build which is now present in all DPDK versions the ABI check verifies. Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech> Acked-by: Aaron Conole <aconole@redhat.com>
2021-04-16build: update minimum required Meson versionGabriel Ganne
Bump Meson required version to 0.49.2 which is chosen so as to be provided by both redhat-8 and debian-10. Update documentation and travis setup script accordingly. This fixes the following warning: WARNING: Project targeting '>= 0.47.1' but tried to use feature introduced in '0.48.0': console arg in custom_target 'console' argument is used within kernel/linux/kni/meson.build Signed-off-by: Gabriel Ganne <gabriel.ganne@6wind.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
2021-04-16ci: fix ABI reference generationDavid Marchand
The machine=generic is not understood by older version of dpdk. It is directly passed to gcc as -march=generic. Since DPDK requires SSE 4.2, this results in an error when configuring v21.02 sources for generating the reference ABI. From GHA [1] logs: """ Compiler for C supports arguments -Wundef: YES Compiler for C supports arguments -Wwrite-strings: YES Compiler for C supports arguments -Wno-address-of-packed-member -Waddress-of-packed-member: NO Compiler for C supports arguments -Wno-packed-not-aligned -Wpacked-not-aligned: NO Compiler for C supports arguments -Wno-missing-field-initializers -Wmissing-field-initializers: YES config/x86/meson.build:14:6: ERROR: Could not get define '__SSE4_2__' A full log can be found at /home/runner/work/dpdk/dpdk-v21.02/build/meson-logs/meson-log.txt Error: Process completed with exit code 1. """ 1: https://github.com/ovsrobot/dpdk/runs/2355005702 Stick to a compatible configuration passing -Dmachine=default. Note: the breakage was not seen earlier this week as I guess the CI workers are using a cached ABI reference for v20.11. Fixes: 5b3a6ca6fd28 ("build: alias default build as generic") Signed-off-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-04-09build: alias default build as genericJuraj Linkeš
The current machine='default' build name is not descriptive. The actual default build is machine='native'. Add an alternative string which does the same build and better describes what we're building: machine='generic'. Leave machine='default' for backwards compatibility. Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech> Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2021-03-03ci: catch coredumpsDavid Marchand
Parts of the unit tests code rely on forked/secondary processes (expectedly) failing. A crash in those situations could be missed so add a check on coredumps presence after unit tests have run. When unit tests fail, it can also help checking for coredumps as it could give more insights on what happened. In some situations (like explicit call to rte_panic), coredump generation must be disabled to avoid false positives. Cc: stable@dpdk.org Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Luca Boccassi <bluca@debian.org> Acked-by: Aaron Conole <aconole@redhat.com>
2021-01-29ci: enable header includes checkBruce Richardson
For CI builds, turn on the checking of includes. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Aaron Conole <aconole@redhat.com>
2021-01-26ci: add aarch64 clang cross-compilation Travis buildsJuraj Linkeš
Mirror the existing gcc jobs - build static and shared libs. Use arm64_armv8_linux_clang_ubuntu1804 meson cross file. Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2020-12-14ci: enable v21 ABI checksDavid Marchand
v21 ABI will be maintained until v21.11. Let's use the latest released libabigail 1.8. In GitHub Actions, libabigail binaries and the ABI reference are stored in two shared caches as all branches can use the same. While at it, we can reproduce changes from the commit 0b8086ce3fe7 ("devtools: remove useless files from ABI reference"). This will save some space in the CI caches. Signed-off-by: David Marchand <david.marchand@redhat.com> Tested-by: Ferruh Yigit <ferruh.yigit@intel.com> Acked-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Aaron Conole <aconole@redhat.com>
2020-12-14ci: hook to GitHub ActionsDavid Marchand
With the recent changes in terms of free access to the Travis CI, let's offer an alternative with GitHub Actions. Running jobs on ARM is not supported unless using external runners, so this commit only adds builds for x86_64 and cross compiling for i386 and aarch64. Differences with the Travis CI integration: - Error logs are not dumped to the console when something goes wrong. Instead, they are gathered in a "catch-all" step and attached as artifacts. - A cache entry is stored once and for all, but if no cache is found you can inherit from the default branch cache. The cache is 5GB large, for the whole git repository. - The maximum retention of logs and artifacts is 3 months. - /home/runner is world writable, so a workaround has been added for starting dpdk processes. - Ilya, working on OVS GHA support, noticed that jobs can run with processors that don't have the same capabilities. For DPDK, this impacts the ccache content since everything was built with -march=native so far, and we will end up with binaries that can't run in a later build. The problem has not been seen in Travis CI (?) but it is safer to use a fixed "-Dmachine=default" in any case. - Scheduling jobs is part of the configuration and takes the form of a crontab. A build is scheduled every Monday at 0:00 (UTC) to provide a default ccache for the week (useful for the ovsrobot). Signed-off-by: David Marchand <david.marchand@redhat.com> Tested-by: Ferruh Yigit <ferruh.yigit@intel.com> Acked-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Aaron Conole <aconole@redhat.com>
2020-04-17ci: reduce examples in static buildsBruce Richardson
Static builds can take a lot of space, so reduce the number of examples built when doing those static builds. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2020-03-24ci: run tests even without hugepageRuifeng Wang
As fast-tests suite generated with only applicable cases included, hugepage is not a mandatory to run the test. Ignore the result of hugepage set up, so that validation in environment without hugepage can proceed. Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com> Reviewed-by: Gavin Hu <gavin.hu@arm.com> Acked-by: Aaron Conole <aconole@redhat.com>
2020-02-18ci: build and use libabigail 1.6David Marchand
libabigail 1.2 (at least) reports changes in 'const' property as an ABI breakage [1]. This was fixed upstream in libabigail 1.4 [2], and a bug has been opened in launchpad [3]. But for now, build and use the last version 1.6 so that the ABI checks can be kept. 1: https://travis-ci.com/DPDK/dpdk/jobs/287872118#L2242 2: https://sourceware.org/git/gitweb.cgi?p=libabigail.git;a=commitdiff;h=215b7eb4fe8b 3: https://bugs.launchpad.net/ubuntu/+source/libabigail/+bug/1863607 Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Aaron Conole <aconole@redhat.com>
2020-02-05devtools: add ABI checksDavid Marchand
For normal developers, those checks are disabled. Enabling them requires a configuration that will trigger the ABI dumps generation as part of the existing devtools/test-build.sh and devtools/test-meson-builds.sh scripts. Those checks are enabled in the CI for the default meson options on x86 and aarch64 so that proposed patches are validated via our CI robot. A cache of the ABI is stored in travis jobs to avoid rebuilding too often. Checks can be informational only, by setting ABI_CHECKS_WARN_ONLY when breaking the ABI in a future release. Explicit suppression rules have been added on internal structures exposed to crypto drivers as the current ABI policy does not apply to them. This could be improved in the future by carefully splitting the headers content with application and driver "users" in mind. We currently have issues reported for librte_crypto recent changes for which suppression rules have been added too. Mellanox glue libraries are explicitly skipped as they are not part of the application ABI. Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Luca Boccassi <bluca@debian.org>
2020-01-14ci: add travis ci support for native aarch64Ruifeng Wang
Add Travis compilation jobs for native aarch64. gcc/clang compilations for static/shared libraries are added. Some limitations for current aarch64 Travis support: 1. Container is used. Huge page is not available due to security reason. 2. Missing kernel header package in Xenial distribution. Solutions to address the limitations: 1. Not to add unit test for now. And run tests with no-huge in future. 2. Use Bionic distribution for all aarch64 jobs. Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com> Reviewed-by: Gavin Hu <gavin.hu@arm.com> Acked-by: Aaron Conole <aconole@redhat.com>
2020-01-09ci: use meson 0.47.1David Marchand
meson 0.53.0 has a compatibility issue [1] with the python 3.5.2 that comes in Ubuntu 16.04. On the other hand, the minimal version supported in dpdk is 0.47.1. Stick to this version to avoid getting hit by regressions in meson latest shiny release. 1: https://github.com/mesonbuild/meson/issues/6427 Cc: stable@dpdk.org Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2019-11-27ci: add minimal check on testpmdDavid Marchand
Try to start testpmd with two vdevs without hugepages. This is a really basic check, but better than nothing. Signed-off-by: David Marchand <david.marchand@redhat.com>
2019-11-19ci: add 32-bit travis buildsBruce Richardson
Add a travis job to build for 32-bit on 64-bit systems to catch additional build errors, for example, incorrect use of printf specifiers with uint64_t types. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Aaron Conole <aconole@redhat.com>
2019-09-13ci: exit setup on any errorDavid Marchand
-e is preferrable so that we can catch errors in the middle of this script. An example is this Travis job [1] that should have errored at the meson install step rather than go to the build step. Adding debug mode as it can help post-mortem. 1: https://travis-ci.com/DPDK/dpdk/jobs/223511683 Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Michael Santana <msantana@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com>
2019-09-13ci: add missing dependencies for documentationDavid Marchand
Install missing dependencies so that doc can be generated. While at it, explicitly configure that we want the doc to be generated. Missing dependencies are then reported as an error rather than silently ignored. Because of these extra dependencies, only build them in dedicated travis jobs. Fixes: ad2b2cfb1ea3 ("ci: enable unit tests with Travis") Cc: stable@dpdk.org Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com>
2019-08-02ci: enable unit tests with TravisAaron Conole
When building under Travis (or another linux CI service), enable running the fast-tests when the RUN_TESTS environment variable is set. For the Travis service, introduce two new shared builds, since the shared builds are the ones passing. Builds that are statically linked still show some issues in some of the eal_flags tests. We make new builds for this, rather than piggybacking, because 'at a glance' it is difficult to determine why a build fails, and if tests were enabled for all builds, then looking at the logs for any build would take a significant amount of time. Finally, the command to invoke fast tests includes a timeout multiplier, since some CI environments don't have enough resources to complete the tests in the default 10s timeout period. Signed-off-by: Aaron Conole <aconole@redhat.com> Acked-by: Michael Santana <msantana@redhat.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
2019-03-30ci: fix arm64 config filenameDavid Marchand
The ARM64 config file has been renamed in the commit ae2f2fee247a ("build: rename linuxapp to linux in meson cross files"). Fixes: 99889bd85228 ("ci: introduce Travis builds for GitHub repositories") Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Aaron Conole <aconole@redhat.com>
2019-03-26ci: introduce Travis builds for GitHub repositoriesMichael Santana
GitHub is a service used by developers to store repositories. GitHub provides service integrations that allow 3rd party services to access developer repositories and perform actions. One of these services is Travis-CI, a simple continuous integration platform. This series introduces the ability for any github mirrors of the DPDK project, including developer mirrors, to kick off builds under the travis CI infrastructure. For now, this just means compilation - no other kinds of automated run exists yet. In the future, this can be expanded to execute and report results for any test-suites that might exist. This is a simple initial implementation of a travis build for the DPDK project. It doesn't require any changes from individual developers to enable, but will allow those developers who opt-in to GitHub and the travis service to get automatic builds for every push they make. The files added under .ci/ exist so that in the future, other CI support platforms (such as cirrus, appveyor, etc.) could have a common place to put their requisite scripts without polluting the main tree. Signed-off-by: Aaron Conole <aconole@redhat.com> Signed-off-by: Michael Santana <msantana@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Luca Boccassi <bluca@debian.org> Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com> Acked-by: Thomas Monjalon <thomas@monjalon.net>