From 8c537e15539ca12a2f6b9721972c079684a3e369 Mon Sep 17 00:00:00 2001 From: Packit Bot Date: May 05 2021 22:16:37 +0000 Subject: exiv2-0.27.3 base --- diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..ebbb287 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,99 @@ +# all builds use the same ccache folder in the project root that is cached +variables: + CCACHE_BASEDIR: '$CI_PROJECT_DIR' + CCACHE_DIR: '$CI_PROJECT_DIR/ccache' + +# default config for all distros: +# - install dependencies via script +# - create ccache dir & setup caching of it (for each job separately) +.build_config: &default_config + before_script: + - ci/install_dependencies.sh + - mkdir -p ccache + cache: + key: "$CI_JOB_NAME" + paths: + - ccache/ + +# default build job: +# - run build script +# - only create artifacts of the build directory when something fails +# (for cmake logs) +.build_template: &distro_build + script: + - python3 ci/test_build.py + artifacts: + when: on_failure + paths: + - build/ + +stages: + - test + - deploy + +Fedora: + image: fedora:latest + <<: *default_config + <<: *distro_build + +Fedora_MinGW: + image: fedora:latest + before_script: + - dnf -y upgrade + - dnf -y install mingw64-gcc-c++ mingw64-filesystem mingw64-expat mingw64-zlib cmake make + script: + - python3 ci/test_build.py --without-tests --cmake-executable "mingw64-cmake" --cmake-options "-DEXIV2_TEAM_EXTRA_WARNINGS=ON -DEXIV2_ENABLE_VIDEO=ON -DEXIV2_ENABLE_WEBREADY=ON -DEXIV2_ENABLE_WIN_UNICODE=ON " --compilers --shared-libs OFF + +Debian: + image: debian:9 + <<: *default_config + <<: *distro_build + +Archlinux: + image: archlinux/base + <<: *default_config + <<: *distro_build + +Ubuntu: + image: ubuntu:18.04 + <<: *default_config + <<: *distro_build + +CentOS: + image: centos:7 + <<: *default_config + <<: *distro_build + +OpenSUSE: + image: opensuse/tumbleweed + <<: *default_config + <<: *distro_build + +Install: + image: fedora:latest + stage: deploy + <<: *default_config + script: + - mkdir build && cd build + - cmake -DCMAKE_BUILD_TYPE=Release -DEXIV2_ENABLE_VIDEO=ON -DEXIV2_ENABLE_WEBREADY=ON -DEXIV2_BUILD_UNIT_TESTS=ON -DCMAKE_INSTALL_PREFIX=/usr/ -DBUILD_WITH_CCACHE=ON .. + - make -j $(nproc) + - make install + - make clean + - EXIV2_BINDIR=/usr/bin/ make tests + +pages: + image: fedora:latest + stage: deploy + <<: *default_config + script: + - dnf -y install doxygen graphviz + - mkdir build && cd build + - cmake -DCMAKE_BUILD_TYPE=Release -DEXIV2_ENABLE_VIDEO=ON -DEXIV2_ENABLE_WEBREADY=ON -DEXIV2_BUILD_DOC=ON .. + - make doc + - cd .. + - mv build/doc/html/ public/ + artifacts: + paths: + - public + only: + - master