summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: ac3495963137a856fa1bc0400d9ae0e4d059f46f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
image: fedora:latest

variables:
  LAST_ABI_BREAK: "334f31b3cf0837ffb2298f498686905e8ba14f7b"
  DNF_CORE_DEPS: >
    gcc
    gettext
    meson
    ninja-build
    git
    gnome-common
    systemd-devel
    glib2-devel
  DNF_TEST_DEPS: >
    gobject-introspection-devel
    glibc-langpack-fr
    vala
    umockdev-devel
    libabigail
  DNF_API_DOC_DEPS: >
    gtk-doc

stages:
  - test
  - document
  - deploy

build-fedora:
  stage: test
  before_script:
    # Undo delangification present in the Fedora Docker images
    - rm -f /etc/rpm/macros.image-language-conf
    - dnf install -y ${DNF_CORE_DEPS} ${DNF_TEST_DEPS}
    - dnf reinstall -y glib2
  script:
    - meson setup -Dtests=enabled build/
    - ninja -C build/ install
    - .ci/check-abi ${LAST_ABI_BREAK} $(git rev-parse HEAD)
    - ninja -C build/ test
    - .ci/fail_skipped_tests.py build/meson-logs/testlog.junit.xml
    - ninja -C build/ dist

reference:
  stage: document
  before_script:
    - dnf install -y ${DNF_CORE_DEPS} ${DNF_API_DOC_DEPS}
  script:
    - meson setup build/ -Dgtk_doc=true
    - ninja -C build/ install
  artifacts:
    name: libgudev-doc
    paths:
      - build/docs/html

pages:
  stage: deploy
  dependencies:
    - reference
  script:
    - mkdir -p public/
    - mv build/docs/html/ public/libgudev/
  artifacts:
    paths:
      - public
  only:
    - master