79 lines
1.7 KiB
YAML
79 lines
1.7 KiB
YAML
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*
|