Update .gitlab-ci.yml (#2876)

Remove support for Fedora 22 (been EOL for a while)
Add support for Ubuntu 17.04 and 17.10

Note that debug builds for 17.04 and 17.10 are still affected by issue #2343, and so always fail.
This commit is contained in:
skwerlman 2017-10-03 09:28:47 -04:00 committed by ctrlaltca
parent b684c12964
commit cf5cd21c50

View file

@ -1,6 +1,6 @@
---
stages: stages:
- build - build
- deploy
.artifacts: &artifacts .artifacts: &artifacts
artifacts: artifacts:
@ -60,6 +60,16 @@ stages:
- apt-get -o dir::cache::archives="cache" install -y libqt5svg5-dev libqt5sql5-mysql - apt-get -o dir::cache::archives="cache" install -y libqt5svg5-dev libqt5sql5-mysql
- apt-get -o dir::cache::archives="cache" install -y libqt5websockets5-dev - apt-get -o dir::cache::archives="cache" install -y libqt5websockets5-dev
.requirements_17xx: &install_requirements_17xx
before_script:
- apt-get -o dir::cache::archives="cache" update -qq
- apt-get -o dir::cache::archives="cache" install -y build-essential g++ cmake git
- apt-get -o dir::cache::archives="cache" install -y libprotobuf-dev protobuf-compiler
- apt-get -o dir::cache::archives="cache" install -y qt5-default qttools5-dev qttools5-dev-tools
- apt-get -o dir::cache::archives="cache" install -y qtmultimedia5-dev libqt5multimedia5-plugins
- apt-get -o dir::cache::archives="cache" install -y libqt5svg5-dev libqt5sql5-mysql
- apt-get -o dir::cache::archives="cache" install -y libqt5websockets5-dev
.build_1604: &1604 .build_1604: &1604
image: ubuntu:16.04 image: ubuntu:16.04
<<: *tags <<: *tags
@ -76,6 +86,22 @@ stages:
<<: *artifacts_deb <<: *artifacts_deb
<<: *cache <<: *cache
.build_1704: &1704
image: ubuntu:17.04
<<: *tags
<<: *branches
<<: *install_requirements_17xx
<<: *artifacts_deb
<<: *cache
.build_1710: &1710
image: ubuntu:17.10
<<: *tags
<<: *branches
<<: *install_requirements_17xx
<<: *artifacts_deb
<<: *cache
build_rc_1604: build_rc_1604:
<<: *1604 <<: *1604
<<: *build_rc_package_deb <<: *build_rc_package_deb
@ -97,6 +123,28 @@ build_debug_1610:
when: always when: always
allow_failure: true allow_failure: true
build_rc_1704:
<<: *1704
<<: *build_rc_package_deb
when: always
build_debug_1704:
<<: *1704
<<: *build_debug_package_deb
when: always
allow_failure: true
build_rc_1710:
<<: *1710
<<: *build_rc_package_deb
when: always
build_debug_1710:
<<: *1710
<<: *build_debug_package_deb
when: always
allow_failure: true
#----------------------------------- DEBIAN ----------------------------------- #----------------------------------- DEBIAN -----------------------------------
.requirements_stretch: &install_requirements_stretch .requirements_stretch: &install_requirements_stretch
@ -126,66 +174,4 @@ build_debug_stretch:
<<: *build_debug_package_deb <<: *build_debug_package_deb
when: always when: always
allow_failure: true allow_failure: true
#============================== REDHAT-BASED ==================================
.build_rc_package_rpm: &build_rc_package_rpm
stage: build
script:
- mkdir -p build
- cd build
- cmake .. -DWITH_SERVER=1 -DCMAKE_BUILD_TYPE=Release -DCPACK_GENERATOR=RPM
- make package -j2
.build_debug_package_rpm: &build_debug_package_rpm
stage: build
script:
- mkdir -p build
- cd build
- cmake .. -DWITH_SERVER=1 -DCMAKE_BUILD_TYPE=Debug -DCPACK_GENERATOR=RPM
- make package -j2
.rpm-artifacts: &artifacts_rpm
artifacts:
paths:
- build/*.rpm
- build/CMakeFiles/*.log
when: always
#--------------------------------- FEDORA -------------------------------------
.requirements_fedora22: &install_requirements_fedora22
before_script:
- /usr/bin/dnf -y groupinstall "development tools"
- /usr/bin/dnf -y install wget qt5* cmake libgcrypt-devel dh-autoreconf gcc-c++
- /usr/bin/dnf -y install protobuf protobuf-devel rpm-build
.build_fedora22: &fedora22
image: fedora:22
<<: *tags
<<: *branches
<<: *install_requirements_fedora22
<<: *artifacts_rpm
<<: *cache
build_rc_fedora22:
<<: *fedora22
<<: *build_rc_package_rpm
when: always
build_debug_fedora22:
<<: *fedora22
<<: *build_debug_package_rpm
when: always
#=================================== DEPLOY ===================================
# deploy_to_s3: # currently unused; requires some config
# stage: deploy
# script:
# # if CI_BUILD_TAG is undefined, use git hash instead of version number
# # otherwise, treat git tag as version number
# # TODO: add deploy commands
# when: on_success