summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 1e54b242833869fe7c4e8d47c9d7bf3c20a7408f (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
stages:
  - build
  - docs
  - deploy

.cache-paths: &cache-paths
  paths:
    - _ccache/

# Common variables
variables:
  COMMON_MESON_FLAGS: "--fatal-meson-warnings --werror"
  MESON_TEST_TIMEOUT_MULTIPLIER: 2

.default-build:
  script:
    - meson setup ${COMMON_MESON_FLAGS} ${EXTRA_MESON_FLAGS} _build .
    - meson compile -C _build
    - .gitlab-ci/run-tests-docker.sh _build
  artifacts:
    when: always
    reports:
      junit:
        - "${CI_PROJECT_DIR}/_build/report.xml"
    name: "atk-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
    paths:
      - "_build/meson-logs"
      - "_build/report.xml"

fedora-latest:
  extends: .default-build
  stage: build
  image: registry.gitlab.gnome.org/gnome/atk/fedora-latest:v2
  variables:
    EXTRA_MESON_FLAGS: "-Dbuildtype=debug -Ddefault_library=both"

debian-stable:
  extends: .default-build
  stage: build
  image: registry.gitlab.gnome.org/gnome/atk/debian-stable:v2
  variables:
    EXTRA_MESON_FLAGS: "-Dbuildtype=debug -Ddefault_library=both"

reference:
  image: registry.gitlab.gnome.org/gnome/atk/fedora-latest:v2
  stage: docs
  variables:
    EXTRA_MESON_FLAGS: "--buildtype=release -Ddocs=true"
  script:
    - meson setup ${COMMON_MESON_FLAGS} ${EXTRA_MESON_FLAGS} _build .
    - ninja -C _build atk-doc
    - mv _build/docs/html _reference
  artifacts:
    paths:
      - _reference

pages:
  stage: deploy
  script:
    - mv _reference/ public/
  artifacts:
    paths:
      - public
  only:
    - master