From f4c8d96dd93b7cdaafbb5d858268266ef4edb2ae Mon Sep 17 00:00:00 2001 From: Toni Uhlig Date: Tue, 3 Aug 2021 11:47:19 +0200 Subject: [PATCH] Gitlab-CI Signed-off-by: Toni Uhlig --- .gitlab-ci.yml | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 3 +++ 2 files changed, 52 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 000000000..2b7c0faff --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,49 @@ +image: debian:stable + +stages: + - build_and_test + +before_script: + - export DEBIAN_FRONTEND=noninteractive + - apt-get update -qq + - > + apt-get install -y -qq \ + coreutils \ + build-essential make cmake binutils gcc autoconf automake \ + libtool pkg-config git \ + libpcap-dev libgcrypt-dev libgpg-error-dev libjson-c-dev zlib1g-dev \ + netcat-openbsd python3 python3-jsonschema tree + +build_and_test: + script: + # static linked build + - mkdir build-cmake-submodule + - cd build-cmake-submodule + - cmake .. -DBUILD_EXAMPLES=ON -DBUILD_NDPI=ON -DENABLE_SANITIZER=ON -DENABLE_ZLIB=ON + - make libnDPI + - tree libnDPI + - make install VERBOSE=1 DESTDIR="$(realpath ../_install)" + - cd .. + - ./test/run_tests.sh ./libnDPI ./build-cmake-submodule/nDPId-test + - > + if ldd build/nDPId | grep -qoEi libndpi; then \ + echo 'nDPId linked against a static libnDPI should not contain a shared linked libnDPI.' >&2; false; fi + # pkg-config dynamic linked build + - mkdir build + - cd build + - export PKG_CONFIG_PATH="$(realpath ../build-cmake-submodule/libnDPI/lib/pkgconfig)" + - cmake .. -DBUILD_EXAMPLES=ON -DENABLE_SANITIZER=ON -DENABLE_MEMORY_PROFILING=ON -DENABLE_ZLIB=ON + - make all VERBOSE=1 + - cd .. + - ./build/nDPId-test || test $? -eq 1 + - ./build/nDPId -h || test $? -eq 1 + # dameon start/stop test + - make -C ./build daemon VERBOSE=1 + - make -C ./build daemon VERBOSE=1 + # make dist + - ./scripts/make-dist.sh + artifacts: + expire_in: 1 week + paths: + - _install/ + stage: build_and_test diff --git a/README.md b/README.md index f59869254..3e03b52cf 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ +![Travis-CI](https://www.travis-ci.com/lnslbrty/nDPId.svg?branch=master "Travis-CI: master branch") +![Gitlab-CI](https://gitlab.com/lnslbrty/nDPId/badges/master/pipeline.svg "Gitlab-CI: master branch") + # abstract nDPId is a set of daemons and tools to capture, process and classify network flows.