aboutsummaryrefslogtreecommitdiffstats
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorPeter Wu <peter@lekensteyn.nl>2020-03-05 01:54:04 +0000
committerAnders Broman <a.broman58@gmail.com>2020-03-05 04:45:52 +0000
commit6bb691189c04a8fd0d618c112290b19ea6d28a0e (patch)
tree78fef983acb413eeb2d4a0fa4cf0853ad4a6c745 /.gitlab-ci.yml
parent5fba6e973b220d933d5dfcba51437369ecfd4c6a (diff)
gitlab-ci: remove unnecessary jobs, upgrade versions
The point of testing multiple compiler versions is to catch bugs that only occur in one particular version. After an analysis of 800+ failed builds, it appears that a lot of the checks are redundant. Changes: * Drop GCC 6 and keep GCC 5, Ubuntu 16.04 default GCC is 5.3. Fixes for warnings in old compilers: commit 829d2c3752 (GCC 5 + 6), commit e451ea0a4d (Clang 5, GCC 4 + 5). Maybe GCC 5 can also be dropped since Ubuntu 18.04 is around for a while. * Drop clang-nopcap, all errors caught by Clang were also caught by GCC. One change caught by gcc-8-nopcap but not Clang: commit 036c3d6bc7. * Remove Clang 5: even though it triggers some unique failures, no major distro ships with it so remove it. * Drop old Clang versions, newer versions catch all warnings from older. * Upgrade to Clang 8 which is already installed in the Docker image. * Remove EOL Fedora 28 and 29, use latest (31). * Remove EOL openSUSE Leap 42.3, keep 15.1 as the latest. Reduces from 20 jobs (15 build, 5 test) to 10 jobs (7 build, 3 test). Change-Id: I4a355dd1a90cbbef9525bd63a8544fa3e22369a2 Reviewed-on: https://code.wireshark.org/review/36281 Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml88
1 files changed, 18 insertions, 70 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index bbe284804e..0505dbc56e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,7 +2,6 @@
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" = "build:rpm-opensuse-42.3" ]; then export LD_LIBRARY_PATH=$builddir/run; fi
- if [ -f $builddir/run/tshark ]; then $builddir/run/tshark --version; fi
# The custom Ubuntu image pre-installs dependencies and compilers to speed up the build:
@@ -36,56 +35,29 @@
- build/packaging/rpm/RPMS
expire_in: 3 days
+# GCC 5 is the default compiler in Ubuntu 16.04, EOL in April 2024.
gcc-5:
<<: *build-ubuntu
variables:
CC: gcc-5
CXX: g++-5
-gcc-6:
- <<: *build-ubuntu
- variables:
- CC: gcc-6
- CXX: g++-6
-gcc-7:
- <<: *build-ubuntu
- variables:
- CC: gcc-7
- CXX: g++-7
-gcc-8:
- <<: *build-ubuntu
- variables:
- CC: gcc-8
- CXX: g++-8
+
+# Rely on fedora:latest and debian-stable jobs for testing a recent GCC version.
+# Since this broke sporadically in the past, test lack of capture support.
gcc-8-nopcap:
<<: *build-ubuntu
variables:
CMAKE_ARGS: -DENABLE_PCAP=NO
CC: gcc-8
CXX: g++-8
-clang-5:
- <<: *build-ubuntu
- variables:
- CMAKE_ARGS: -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
- CC: clang-5.0
- CXX: clang++-5.0
-clang-6:
- <<: *build-ubuntu
- variables:
- CMAKE_ARGS: -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
- CC: clang-6.0
- CXX: clang++-6.0
-clang-7:
+
+clang-8:
<<: *build-ubuntu
variables:
CMAKE_ARGS: -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
- CC: clang-7
- CXX: clang++-7
-clang-7-nopcap:
- <<: *build-ubuntu
- variables:
- CMAKE_ARGS: -DENABLE_PCAP=NO -DCMAKE_C_FLAGS=-Wframe-larger-than=20000
- CC: clang-7
- CXX: clang++-7
+ CC: clang-8
+ CXX: clang++-8
+
build:rpm-centos-7:
<<: *build-rpm
image: centos:7
@@ -107,7 +79,8 @@ test:rpm-centos-7:
- build:rpm-centos-7
variables:
GIT_STRATEGY: none
-.build-rpm-opensuse: &build-rpm-opensuse
+build:rpm-opensuse-15.1:
+ image: opensuse/leap:15.1
<<: *build-rpm
script:
- zypper --non-interactive install update-desktop-files
@@ -117,31 +90,19 @@ test:rpm-centos-7:
- cd build
- cmake -GNinja ..
- ninja rpm-package
-.test-rpm-opensuse: &test-rpm-opensuse
+test:rpm-opensuse-15.1:
+ image: opensuse/leap:15.1
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
- image: opensuse/leap:42.3
-test:rpm-opensuse-42.3:
- <<: *test-rpm-opensuse
- image: opensuse/leap:42.3
- dependencies:
- - build:rpm-opensuse-42.3
-build:rpm-opensuse-15.1:
- <<: *build-rpm-opensuse
- image: opensuse/leap:15.1
-test:rpm-opensuse-15.1:
- <<: *test-rpm-opensuse
- image: opensuse/leap:15.1
dependencies:
- build:rpm-opensuse-15.1
-.build-rpm-fedora: &build-rpm-fedora
+build:rpm-fedora:
<<: *build-rpm
+ image: fedora
script:
- dnf upgrade -y
- tools/rpm-setup.sh --install-optional -y
@@ -149,29 +110,16 @@ test:rpm-opensuse-15.1:
- cd build
- cmake3 -GNinja ..
- ninja-build rpm-package
-.test-rpm-fedora: &test-rpm-fedora
+test:rpm-fedora:
+ image: 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
+ - build:rpm-fedora
# Job to generate packages for Debian stable
build:debian-stable: