ci: bring custom cpp image with deps installed
Some checks failed
continuous-integration/drone/push Build is failing

use immawanderer/fedora-cpp with:
* c/cpp dev stuff
* ndpi already compiled and preinstalled (including header files)

consequently, we don't have to use the etc vol.
also, make two final build steps (in each of the build pipelines) run in
parallel, since now they don't access each other's resources (subfolder
magic et al.)
This commit is contained in:
surtur 2021-05-07 00:20:54 +02:00
parent f088faa94b
commit 94364544e7
Signed by: wanderer
GPG Key ID: 19CE1EC1D9E0486D

@ -18,9 +18,9 @@ steps:
commands:
- uname -r; cat /etc/os-release; nproc
- name: pull-fedora:34
- name: pull-immawanderer/fedora-cpp:linux-amd64
pull: always
image: fedora:34
image: immawanderer/fedora-cpp:linux-amd64
depends_on: [clone]
commands:
- uname -r; cat /etc/os-release; nproc
@ -111,7 +111,7 @@ steps:
- ldd fastnetmon_api_client
- ldd fastnetmon_client
when:
status: [success, failure]
status: [success]
depends_on: [build fastnetmon]
- name: fastnetmon subfolder build
@ -129,8 +129,8 @@ steps:
- ldd build/fastnetmon_api_client
- ldd build/fastnetmon_client
when:
status: [success, failure]
depends_on: [build fastnetmon explicit features]
status: [success]
depends_on: [build fastnetmon]
volumes:
- name: usrcache
@ -152,45 +152,10 @@ trigger:
event: [push, pull_request]
steps:
- name: deps
pull: if-not-exists
image: fedora:34
volumes:
- name: etc
path: /etc
- name: usrcache
path: /usr
commands:
- printf "$SHELL\n"
- printf "$PATH\n"
- dnf install -y git make {c,auto}make autoconf lld binutils gcc gcc-c++ libgcc libstdc++-{devel,static} glibc-devel openmpi-devel bison flex grpc-{cli,cpp,devel,plugins} protobuf-c-{devel,compiler} protobuf-compiler cppunit log4cpp-devel json-c-devel capnproto-{devel,libs} libpcap-devel hiredis-devel mongo-c-driver-{devel,libs} boost-{devel,atomic,chrono,date-time,system,program-options,regex,thread} libtool libtool-ltdl which pkgconf openssl-devel kernel-devel ncurses-{c++-libs,devel,libs,static}
- dnf clean all -y
- name: build-install nDPI
pull: if-not-exists
image: fedora:34
volumes:
- name: etc
path: /etc
- name: usrcache
path: /usr
commands:
- export MAKEFLAGS="$MAKEFLAGS -j$(nproc)" && printf "$MAKEFLAGS\n"
- git clone https://github.com/ntop/nDPI.git /usr/src/nDPI
- cd /usr/src/nDPI
- git checkout 1.7
- ./autogen.sh
- ./configure
- make
- make install
depends_on: [deps]
- name: build fastnetmon
pull: if-not-exists
image: fedora:34
image: immawanderer/fedora-cpp:linux-amd64
volumes:
- name: etc
path: /etc
- name: usrcache
path: /usr
commands:
@ -202,12 +167,11 @@ steps:
- cmake -DCMAKE_CXX_FLAGS="$CMAKE_CXX_FLAGS -Wall -Werror -Wextra -Wno-reorder -Wno-unused-variable -Wno-unused-parameter -Wno-sign-compare -Wno-unused-but-set-variable -Wno-format-truncation -Wno-implicit-fallthrough -Wno-type-limits -Wno-class-memaccess -Wno-stringop-truncation" .
- make clean fastnetmon all
when:
status: [success, failure]
depends_on: [build-install nDPI]
status: [success]
- name: print shared object deps
pull: if-not-exists
image: fedora:34
image: immawanderer/fedora-cpp:linux-amd64
volumes:
- name: usrcache
path: /usr
@ -219,10 +183,8 @@ steps:
- name: build fastnetmon explicit features
pull: if-not-exists
image: fedora:34
image: immawanderer/fedora-cpp:linux-amd64
volumes:
- name: etc
path: /etc
- name: usrcache
path: /usr
commands:
@ -234,15 +196,13 @@ steps:
- ldd fastnetmon_api_client
- ldd fastnetmon_client
when:
status: [success, failure]
status: [success]
depends_on: [build fastnetmon]
- name: fastnetmon subfolder build
pull: if-not-exists
image: fedora:34
image: immawanderer/fedora-cpp:linux-amd64
volumes:
- name: etc
path: /etc
- name: usrcache
path: /usr
commands:
@ -254,12 +214,10 @@ steps:
- ldd build/fastnetmon_api_client
- ldd build/fastnetmon_client
when:
status: [success, failure]
depends_on: [build fastnetmon explicit features]
status: [success]
depends_on: [build fastnetmon]
volumes:
- name: usrcache
temp: {}
- name: etc
temp: {}
...