image: $CI_REGISTRY/soundship/loopp-docker-build-env:stable stages: - build - test - package #include: # - template: Code-Quality.gitlab-ci.yml static-analysis: tags: - docker stage: test allow_failure: true script: - lizard -C 10 -L 200 -x src/cjson/* src/tests/* src/ >&1 | tee lizard.txt artifacts: paths: - lizard.txt expire_in: 2 days dependencies: [] build-test: tags: - docker stage: build script: - meson buildDir -DunitTests=true -Db_coverage=true - ninja -C buildDir artifacts: untracked: true expire_in: 1 days dependencies: [] build-publish: tags: - docker stage: build script: - meson --prefix /usr buildDir - ninja -C buildDir artifacts: untracked: true expire_in: 1 days test: tags: - docker stage: test dependencies: - build-test script: - ninja -C buildDir test - gcovr -b -e buildDir/loopp@exe/catch.hpp -e buildDir/loopp@exe/test_ <&1 | tee buildDir/coverage.txt artifacts: paths: - buildDir/coverage.txt reports: junit: buildDir/junit.xml coverage: '/^TOTAL.*\s+(\d+\%)$/' package-AppImage: tags: - docker stage: package dependencies: - build-publish script: - DESTDIR=./appdir ninja -C buildDir install ; find ./buildDir/appdir - cp resources/icons/loopp.png buildDir/appdir/loopp.png - unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH - /linuxdeployqt-continuous-x86_64.AppImage --appimage-extract - squashfs-root/AppRun buildDir/appdir/usr/share/applications/*.desktop -appimage artifacts: untracked: false expire_in: 30 days paths: - Loopp-*.AppImage*