wireshark/.gitlab-ci.yml

151 lines
5.1 KiB
YAML
Raw Normal View History

.ubuntu: &ubuntu
image: crondaemon/wireshark
retry: 1
before_script:
- rm -rf /etc/apt/sources.list.d/*
- echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial main" > /etc/apt/sources.list.d/clang.list
- echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main" > /etc/apt/sources.list.d/clang6.list
- echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main" > /etc/apt/sources.list.d/clang7.list
- apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 15CF4D18AF4F7421
- echo "deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial main" > /etc/apt/sources.list.d/gcc.list
- apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1E9377A2BA9EF27F
- apt-get update -qq
- apt-get install -y python3-pip locales
- pip3 install pytest pytest-xdist
- useradd user
- locale-gen en_US.UTF-8
- export LANG=en_US.UTF-8
- export PYTEST_ADDOPTS=--skip-missing-programs=dumpcap,rawshark
- mkdir build
- cd build
.rpm: &rpm
artifacts:
paths:
- build/packaging/rpm/RPMS
expire_in: 3 days
gcc-4:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps gcc-4.9 g++-4.9 -y
- cmake -GNinja -DCMAKE_C_COMPILER=gcc-4.9 -DCMAKE_CXX_COMPILER=g++-4.9 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
gcc-5:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps gcc-5 g++-5 -y
- cmake -GNinja -DCMAKE_C_COMPILER=gcc-5 -DCMAKE_CXX_COMPILER=g++-5 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
gcc-6:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps gcc-6 g++-6 -y
- cmake -GNinja -DCMAKE_C_COMPILER=gcc-6 -DCMAKE_CXX_COMPILER=g++-6 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
gcc-7:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps gcc-7 g++-7 -y
- cmake -GNinja -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
gcc-8:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps gcc-8 g++-8 -y
- cmake -GNinja -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
gcc-8-nopcap:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps gcc-8 g++-8 -y
- cmake -GNinja -DENABLE_PCAP=OFF -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
clang-5:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps clang-5.0 -y
- cmake -GNinja -DCMAKE_C_COMPILER=clang-5.0 -DCMAKE_CXX_COMPILER=clang++-5.0 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
clang-6:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps clang-6.0 -y
- cmake -GNinja -DCMAKE_C_COMPILER=clang-6.0 -DCMAKE_CXX_COMPILER=clang++-6.0 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
clang-7:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps clang-7 -y
- cmake -GNinja -DCMAKE_C_COMPILER=clang-7 -DCMAKE_CXX_COMPILER=clang++-7 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
clang-7-nopcap:
<<: *ubuntu
script:
- ../tools/debian-setup.sh --install-optional --install-test-deps clang-7 -y
- cmake -GNinja -DENABLE_PCAP=OFF -DCMAKE_C_COMPILER=clang-7 -DCMAKE_CXX_COMPILER=clang++-7 -DCMAKE_C_FLAGS=-Wframe-larger-than=20000 ..
- ninja
- ninja test-programs
- chown -R user .
- su user -c pytest
rpm-centos-7:
<<: *rpm
image: centos:7
script:
- yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
- tools/rpm-setup.sh --install-optional -y
- mkdir build
- cd build
- cmake3 -GNinja ..
- ninja-build rpm-package
rpm-opensuse-42.3:
<<: *rpm
image: opensuse:42.3
script:
- zypper --non-interactive install update-desktop-files
- tools/rpm-setup.sh --install-optional ruby
- gem install asciidoctor -v 1.5.8 --no-ri --no-rdoc
- mkdir build
- cd build
- cmake -GNinja ..
- ninja rpm-package
rpm-fedora-28:
<<: *rpm
image: fedora:28
script:
- dnf upgrade -y
- tools/rpm-setup.sh --install-optional -y
- mkdir build
- cd build
- cmake3 -GNinja ..
- ninja-build rpm-package
after_script:
- for builddir in build/packaging/rpm/BUILD/wireshark-*/build build/packaging/rpm/BUILD/wireshark-* build; do [ ! -d "$builddir" ] || break; done
- if [ "$CI_JOB_NAME" = "rpm-opensuse-42.3" ]; then export LD_LIBRARY_PATH=$builddir/run; fi
- if [ -f $builddir/run/tshark ]; then $builddir/run/tshark --version; fi