2019-04-10 10:52:52 +00:00
|
|
|
.build: &build
|
|
|
|
stage: build
|
|
|
|
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
|
2019-05-04 21:02:33 +00:00
|
|
|
|
|
|
|
# The custom Ubuntu image pre-installs dependencies and compilers to speed up the build:
|
|
|
|
# https://hub.docker.com/r/wireshark/wireshark-ubuntu-dev
|
|
|
|
# https://github.com/wireshark/wireshark-ubuntu-dev-docker
|
2019-04-10 10:52:52 +00:00
|
|
|
.build-ubuntu: &build-ubuntu
|
|
|
|
<<: *build
|
2019-05-04 21:02:33 +00:00
|
|
|
image: wireshark/wireshark-ubuntu-dev
|
2018-06-08 08:36:16 +00:00
|
|
|
retry: 1
|
|
|
|
before_script:
|
|
|
|
- apt-get update -qq
|
2019-05-10 08:49:17 +00:00
|
|
|
- ./tools/debian-setup.sh --install-optional --install-test-deps -y
|
2019-04-12 14:32:32 +00:00
|
|
|
- useradd user
|
|
|
|
- locale-gen en_US.UTF-8
|
|
|
|
- export LANG=en_US.UTF-8
|
|
|
|
- export PYTEST_ADDOPTS=--skip-missing-programs=dumpcap,rawshark
|
2018-06-08 08:36:16 +00:00
|
|
|
- mkdir build
|
|
|
|
- cd build
|
2019-05-12 20:33:34 +00:00
|
|
|
script:
|
|
|
|
- cmake -GNinja $CMAKE_ARGS ..
|
|
|
|
- ninja
|
|
|
|
- ninja test-programs
|
|
|
|
- chown -R user .
|
2019-05-13 07:06:35 +00:00
|
|
|
- if [ -f run/dumpcap ]; then setcap cap_net_raw,cap_net_admin+eip run/dumpcap; fi
|
2019-05-12 20:33:34 +00:00
|
|
|
- su user -c pytest-3
|
|
|
|
|
2019-04-10 10:52:52 +00:00
|
|
|
.build-rpm: &build-rpm
|
|
|
|
<<: *build
|
2019-01-17 09:13:09 +00:00
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- build/packaging/rpm/RPMS
|
|
|
|
expire_in: 3 days
|
2019-05-12 20:33:34 +00:00
|
|
|
|
2016-10-21 15:22:40 +00:00
|
|
|
gcc-5:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CC: gcc-5
|
|
|
|
CXX: g++-5
|
2016-10-21 15:22:40 +00:00
|
|
|
gcc-6:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CC: gcc-6
|
|
|
|
CXX: g++-6
|
2017-08-18 11:52:48 +00:00
|
|
|
gcc-7:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CC: gcc-7
|
|
|
|
CXX: g++-7
|
2018-05-03 10:46:06 +00:00
|
|
|
gcc-8:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CC: gcc-8
|
|
|
|
CXX: g++-8
|
2018-05-03 10:46:06 +00:00
|
|
|
gcc-8-nopcap:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CMAKE_ARGS: -DENABLE_PCAP=NO
|
|
|
|
CC: gcc-8
|
|
|
|
CXX: g++-8
|
2018-08-29 10:18:57 +00:00
|
|
|
clang-5:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CMAKE_ARGS: -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
|
|
|
|
CC: clang-5.0
|
|
|
|
CXX: clang++-5.0
|
2018-08-29 10:18:57 +00:00
|
|
|
clang-6:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CMAKE_ARGS: -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
|
|
|
|
CC: clang-6.0
|
|
|
|
CXX: clang++-6.0
|
2018-02-26 21:27:57 +00:00
|
|
|
clang-7:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CMAKE_ARGS: -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
|
|
|
|
CC: clang-7
|
|
|
|
CXX: clang++-7
|
2018-02-26 21:27:57 +00:00
|
|
|
clang-7-nopcap:
|
2019-04-10 10:52:52 +00:00
|
|
|
<<: *build-ubuntu
|
2019-05-12 20:33:34 +00:00
|
|
|
variables:
|
|
|
|
CMAKE_ARGS: -DENABLE_PCAP=NO -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
|
|
|
|
CC: clang-7
|
|
|
|
CXX: clang++-7
|
2019-04-10 10:52:52 +00:00
|
|
|
build:rpm-centos-7:
|
|
|
|
<<: *build-rpm
|
2018-06-08 09:49:50 +00:00
|
|
|
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
|
2019-04-10 10:52:52 +00:00
|
|
|
test:rpm-centos-7:
|
|
|
|
stage: test
|
|
|
|
image: centos:7
|
|
|
|
script:
|
|
|
|
- yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
|
|
|
|
- yum --nogpgcheck localinstall -y build/packaging/rpm/RPMS/x86_64/*.rpm
|
|
|
|
- tshark --version
|
|
|
|
dependencies:
|
|
|
|
- build:rpm-centos-7
|
|
|
|
variables:
|
|
|
|
GIT_STRATEGY: none
|
|
|
|
.build-rpm-opensuse: &build-rpm-opensuse
|
|
|
|
<<: *build-rpm
|
2018-06-08 11:53:24 +00:00
|
|
|
script:
|
2019-01-14 13:20:20 +00:00
|
|
|
- zypper --non-interactive install update-desktop-files
|
2019-01-13 09:18:39 +00:00
|
|
|
- tools/rpm-setup.sh --install-optional ruby
|
2019-03-23 22:11:14 +00:00
|
|
|
- gem install asciidoctor -v 1.5.8 --no-ri --no-rdoc
|
2018-06-08 11:53:24 +00:00
|
|
|
- mkdir build
|
|
|
|
- cd build
|
2019-01-17 13:08:07 +00:00
|
|
|
- cmake -GNinja ..
|
|
|
|
- ninja rpm-package
|
2019-04-10 10:52:52 +00:00
|
|
|
.test-rpm-opensuse: &test-rpm-opensuse
|
|
|
|
stage: test
|
|
|
|
script:
|
|
|
|
- zypper --no-gpg-checks install -y build/packaging/rpm/RPMS/x86_64/*.rpm
|
|
|
|
- tshark --version
|
|
|
|
variables:
|
|
|
|
GIT_STRATEGY: none
|
|
|
|
build:rpm-opensuse-42.3:
|
|
|
|
<<: *build-rpm-opensuse
|
2019-07-05 12:49:34 +00:00
|
|
|
image: opensuse/leap:42.3
|
2019-04-10 10:52:52 +00:00
|
|
|
test:rpm-opensuse-42.3:
|
|
|
|
<<: *test-rpm-opensuse
|
2019-07-05 12:49:34 +00:00
|
|
|
image: opensuse/leap:42.3
|
2019-04-10 10:52:52 +00:00
|
|
|
dependencies:
|
|
|
|
- build:rpm-opensuse-42.3
|
|
|
|
build:rpm-opensuse-15.0:
|
|
|
|
<<: *build-rpm-opensuse
|
|
|
|
image: opensuse/leap:15.0
|
|
|
|
test:rpm-opensuse-15.0:
|
|
|
|
<<: *test-rpm-opensuse
|
|
|
|
image: opensuse/leap:15.0
|
|
|
|
dependencies:
|
|
|
|
- build:rpm-opensuse-15.0
|
|
|
|
.build-rpm-fedora: &build-rpm-fedora
|
|
|
|
<<: *build-rpm
|
2018-06-17 21:01:01 +00:00
|
|
|
script:
|
2019-01-12 22:33:18 +00:00
|
|
|
- dnf upgrade -y
|
2018-06-17 21:01:01 +00:00
|
|
|
- tools/rpm-setup.sh --install-optional -y
|
|
|
|
- mkdir build
|
|
|
|
- cd build
|
|
|
|
- cmake3 -GNinja ..
|
|
|
|
- ninja-build rpm-package
|
2019-04-10 10:52:52 +00:00
|
|
|
.test-rpm-fedora: &test-rpm-fedora
|
|
|
|
stage: test
|
|
|
|
script:
|
|
|
|
- dnf install -y build/packaging/rpm/RPMS/x86_64/*.rpm
|
|
|
|
- tshark --version
|
|
|
|
variables:
|
|
|
|
GIT_STRATEGY: none
|
|
|
|
build:rpm-fedora-28:
|
|
|
|
<<: *build-rpm-fedora
|
|
|
|
image: fedora:28
|
|
|
|
test:rpm-fedora-28:
|
|
|
|
<<: *test-rpm-fedora
|
|
|
|
image: fedora:28
|
|
|
|
dependencies:
|
|
|
|
- build:rpm-fedora-28
|
|
|
|
build:rpm-fedora-29:
|
|
|
|
<<: *build-rpm-fedora
|
|
|
|
image: fedora:29
|
|
|
|
test:rpm-fedora-29:
|
|
|
|
<<: *test-rpm-fedora
|
|
|
|
image: fedora:29
|
|
|
|
dependencies:
|
|
|
|
- build:rpm-fedora-29
|
2019-05-10 19:25:54 +00:00
|
|
|
|
|
|
|
# Job to generate packages for Debian stable
|
|
|
|
build:debian-stable:
|
|
|
|
image: debian:stable
|
|
|
|
stage: build
|
|
|
|
before_script:
|
|
|
|
- ./tools/debian-setup.sh --install-optional --install-test-deps -y --install-deb-deps
|
|
|
|
script:
|
|
|
|
# Shared GitLab runners limit the log size to 4M, so reduce verbosity. See
|
|
|
|
# https://gitlab.com/gitlab-com/support-forum/issues/2790
|
|
|
|
- DH_QUIET=1 dpkg-buildpackage -b --no-sign -jauto
|
|
|
|
- mkdir debian-packages
|
|
|
|
- mv ../*.deb debian-packages/
|
|
|
|
artifacts:
|
|
|
|
paths:
|
|
|
|
- debian-packages/*.deb
|
|
|
|
expire_in: 3 days
|