diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0ece6fad..5ed47ffa 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,6 @@ +--- stages: - build - - deploy .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 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 image: ubuntu:16.04 <<: *tags @@ -76,6 +86,22 @@ stages: <<: *artifacts_deb <<: *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: <<: *1604 <<: *build_rc_package_deb @@ -97,6 +123,28 @@ build_debug_1610: when: always 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 ----------------------------------- .requirements_stretch: &install_requirements_stretch @@ -126,66 +174,4 @@ build_debug_stretch: <<: *build_debug_package_deb when: always 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 +