Skip to content

Commit

Permalink
travis: Check compilation with DPDK experimental API.
Browse files Browse the repository at this point in the history
Add Travis jobs to check compilation with DPDK experimental API enabled.
This will help us catch issues for the day we need one of them.

Note: this should not be merged to master, intended for dpdk-latest
branch only.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ian Stokes <ian.stokes@intel.com>
  • Loading branch information
david-marchand authored and istokes committed Nov 24, 2021
1 parent 47339dc commit 651a8f2
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 4 deletions.
8 changes: 7 additions & 1 deletion .ci/linux-build.sh
Expand Up @@ -7,6 +7,9 @@ CFLAGS_FOR_OVS="-g -O2"
SPARSE_FLAGS=""
EXTRA_OPTS="--enable-Werror"

[ -z "$DPDK_EXPERIMENTAL" ] || DPDK=1
[ -z "$DPDK_SHARED" ] || DPDK=1

on_exit() {
if [ $? = 0 ]; then
exit
Expand Down Expand Up @@ -214,7 +217,7 @@ if [ "$KERNEL" ]; then
install_kernel $KERNEL
fi

if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
if [ "$DPDK" ]; then
if [ -z "$DPDK_VER" ]; then
DPDK_VER="20.11.1"
fi
Expand All @@ -223,6 +226,9 @@ if [ "$DPDK" ] || [ "$DPDK_SHARED" ]; then
# Disregard cast alignment errors until DPDK is fixed
CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -Wno-cast-align"
fi
if [ -n "$DPDK_EXPERIMENTAL" ]; then
CFLAGS_FOR_OVS="${CFLAGS_FOR_OVS} -DALLOW_EXPERIMENTAL_API"
fi
fi

if [ "$CC" = "clang" ]; then
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/build-and-test.yml
Expand Up @@ -17,6 +17,7 @@ jobs:
DEB_PACKAGE: ${{ matrix.deb_package }}
DPDK: ${{ matrix.dpdk }}
DPDK_SHARED: ${{ matrix.dpdk_shared }}
DPDK_EXPERIMENTAL: ${{ matrix.dpdk_experimental }}
KERNEL: ${{ matrix.kernel }}
KERNEL_LIST: ${{ matrix.kernel_list }}
LIBS: ${{ matrix.libs }}
Expand Down Expand Up @@ -102,6 +103,9 @@ jobs:
dpdk_shared: dpdk-shared
opts: --enable-shared

- compiler: gcc
dpdk_shared: dpdk-experimental

- compiler: gcc
m32: m32
opts: --disable-ssl
Expand All @@ -124,7 +128,7 @@ jobs:
python-version: '3.9'

- name: create ci signature file for the dpdk cache key
if: matrix.dpdk != '' || matrix.dpdk_shared != ''
if: matrix.dpdk != '' || matrix.dpdk_shared != '' || matrix.dpdk_experimental != ''
# This will collect most of DPDK related lines, so hash will be different
# if something changed in a way we're building DPDK including DPDK_VER.
# This also allows us to use cache from any branch as long as version
Expand All @@ -134,10 +138,10 @@ jobs:
cat dpdk-ci-signature
- name: cache
if: matrix.dpdk != '' || matrix.dpdk_shared != ''
if: matrix.dpdk != '' || matrix.dpdk_shared != '' || matrix.dpdk_experimental != ''
uses: actions/cache@v2
env:
matrix_key: ${{ matrix.dpdk }}${{ matrix.dpdk_shared }}
matrix_key: ${{ matrix.dpdk }}${{ matrix.dpdk_shared }}${{ matrix.dpdk_experimental}}
ci_key: ${{ hashFiles('dpdk-ci-signature') }}
with:
path: dpdk-dir
Expand Down
3 changes: 3 additions & 0 deletions .travis.yml
Expand Up @@ -38,6 +38,9 @@ matrix:
- arch: arm64
compiler: gcc
env: TESTSUITE=1 DPDK=1
- arch: arm64
compiler: gcc
env: DPDK_EXPERIMENTAL=1
- arch: arm64
compiler: gcc
env: KERNEL_LIST="5.5 4.19"
Expand Down

0 comments on commit 651a8f2

Please sign in to comment.