# The container images used in this pipeline are built from this # GitLab project: https://gitlab.gnome.org/GNOME/tracker-oci-images variables: # These can be used to see verbose log output from the functional-tests. # See HACKING.md for more information. TRACKER_VERBOSITY: "1" TRACKER_TESTS_VERBOSE: "no" # This can be used when debugging test failures that only occur within GitLab CI. MESON_TEST_EXTRA_ARGS: "" stages: - test - analysis .test_template: &test stage: test script: - su tracker -c 'mkdir build' - su tracker -c 'cd build; meson .. -Db_lto=true -Db_coverage=true' - su tracker -c 'cd build; ninja' - | # Remove the many "CI_" variables from the environment. Meson dumps the # whole environment for every failed test, and that gives a whole # screenful of junk each time unless we strip these. unset $(env|grep -o '^CI_[^=]*') su tracker -c 'cd build; env LANG=C.UTF-8 LC_ALL=C.UTF-8 dbus-run-session eatmydata meson test --print-errorlogs ${MESON_TEST_EXTRA_ARGS}' after_script: - | echo "Distribution: " echo egrep '^NAME=|^VERSION=' /etc/os-release echo echo "Test suite settings:" echo echo "TRACKER_VERBOSITY: ${TRACKER_VERBOSITY}" echo "TRACKER_TESTS_VERBOSE: ${TRACKER_TESTS_VERBOSE}" echo "MESON_TEST_EXTRA_ARGS: ${MESON_TEST_EXTRA_ARGS}" echo echo "These values can be set at https://gitlab.gnome.org/GNOME/tracker/pipelines/new" artifacts: when: always paths: - build/meson-logs/testlog.txt test-alpine-edge: image: registry.gitlab.gnome.org/gnome/tracker-oci-images/amd64/alpine:edge <<: *test test-fedora-latest: image: registry.gitlab.gnome.org/gnome/tracker-oci-images/amd64/fedora:latest <<: *test test-ubuntu-rolling: image: registry.gitlab.gnome.org/gnome/tracker-oci-images/amd64/ubuntu:rolling <<: *test coverity: stage: analysis image: registry.gitlab.gnome.org/gnome/tracker-oci-images/amd64/fedora:latest allow_failure: true script: - dnf install -y clang - su tracker -c 'curl https://scan.coverity.com/download/linux64 --data "token=$COVERITY_TOKEN&project=Tracker" --output /tmp/coverity_tool.tgz' - su tracker -c 'tar zxf /tmp/coverity_tool.tgz' - su tracker -c 'mkdir coverity-build' - su tracker -c 'export CC=clang; cd coverity-build; meson ..' - su tracker -c 'cd coverity-build; ../cov-analysis-linux64-*/bin/cov-build --dir cov-int ninja' - su tracker -c 'cd coverity-build; tar czf cov-int.tar.gz cov-int' - su tracker -c 'curl https://scan.coverity.com/builds?project=Tracker --form token=$COVERITY_TOKEN --form email=carlosg@gnome.org --form file=@coverity-build/cov-int.tar.gz --form version="`git describe --tags`" --form description="gitlab CI build"' only: - master