.gitlab-ci.yml 2.03 KB
Newer Older
Bastien Nocera's avatar
Bastien Nocera committed
1
2
3
4
image: fedora:rawhide

variables:
  DEPENDENCIES: dbus-glib-devel pam-devel polkit-devel
5
6
                gtk-doc meson gettext gcovr
                gcc gcc-c++ glibc-devel python3-dbusmock python3-libpamtest systemd-devel
Bastien Nocera's avatar
Bastien Nocera committed
7
8
9
  DEPENDENCIES_STABLE: $DEPENDENCIES libfprint-devel
  DEPENDENCIES_DEV: $DEPENDENCIES git
  # Sync'ed up with https://gitlab.freedesktop.org/libfprint/libfprint/blob/master/.gitlab-ci.yml
10
11
12
13
  # and stripped down to remove dependencies that are not strictly needed
  DEPENDENCIES_LIBFPRINT: libgusb-devel glib2-devel meson
                          gcc gcc-c++ glibc-devel
                          gobject-introspection-devel python3-cairo python3-gobject
Bastien Nocera's avatar
Bastien Nocera committed
14

15
16
17
18
19
20
21
22
23
24
25
26
.install_libfprint_dev: &install_libfprint_dev
  before_script:
    - dnf update -y --nogpgcheck && dnf install -y --nogpgcheck $DEPENDENCIES_LIBFPRINT $DEPENDENCIES_DEV
    - git clone https://gitlab.freedesktop.org/libfprint/libfprint.git
    - cd libfprint
    - meson . _build --prefix=/usr -Ddrivers=virtual_image -Ddoc=false
    - ninja -C _build
    - ninja -C _build install
    - cd ..
    # So we don't get error about this libfprint file
    - echo "libfprint/demo/gtk-libfprint-test.ui" >> po/POTFILES.skip

27
build_stable:
28
29
30
31
32
33
34
35
36
  # FIXME: Stable builds will fail until libfprintv 2 reaches rawhide
  allow_failure: true
  before_script:
    - dnf update -y --nogpgcheck && dnf install -y --nogpgcheck $DEPENDENCIES_STABLE
  script:
    - meson _build
    - ninja -C _build -v
    - ninja -C _build -v install

37
build_dev:
38
39
  <<: *install_libfprint_dev
  script:
Bastien Nocera's avatar
Bastien Nocera committed
40
    - meson _build --werror -Dgtk_doc=true
41
42
43
44
45
46
47
48
    - ninja -C _build -v
    - ninja -C _build -v install
  artifacts:
    name: log
    when: on_failure
    paths:
      - _build/meson-logs/*.txt

49
test_dev:
50
51
52
  stage: test
  <<: *install_libfprint_dev
  script:
53
    - meson _build -Db_coverage=true
54
    - meson test -C _build --verbose --no-stdsplit --timeout-multiplier 3
55
    - ninja -C _build coverage
56
    - cat _build/meson-logs/coverage.txt
57
  artifacts:
58
    name: log-and-coverage
59
60
    when: always
    paths:
61
      - _build/meson-logs