summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 9c998515343946574e22e83232e4f2b3f4afa49e (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
include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml'

stages:
  - build

check-code-style:
  stage: .pre
  image: alpine:latest
  before_script:
    - apk update && apk add uncrustify bash python3
  script:
    - bash data/check-code-style

variables:
  BUNDLE: 'epiphany-git.flatpak'

.flatpak-template:
  extends: '.flatpak'
  stage: build
  variables:
    MANIFEST_PATH: 'org.gnome.Epiphany.json'
    RUNTIME_REPO: 'https://nightly.gnome.org/gnome-nightly.flatpakrepo'
    FLATPAK_MODULE: 'epiphany'
    APP_ID: 'org.gnome.Epiphany.Devel'

flatpak:
  extends: '.flatpak-template'
  stage: build
  variables:
    MESON_ARGS: '-Dprofile=Devel -Dunit_tests=enabled --werror'
  except:
    - master

flatpak-master:
  extends: '.flatpak-template'
  stage: build
  variables:
    MESON_ARGS: '-Dtech_preview=true -Dprofile=Devel'
  only:
    - master

flatpak-scanbuild:
  extends: '.flatpak-template'
  stage: .pre
  variables:
    MESON_ARGS: '-Dprofile=Devel -Dunit_tests=enabled --werror'
  image: 'registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master'
  script:
    - flatpak-builder --stop-at=${FLATPAK_MODULE} flatpak_app ${MANIFEST_PATH}
    - flatpak build flatpak_app meson --prefix=/app ${MESON_ARGS} _build
    - flatpak build flatpak_app ninja -C _build scan-build
    - bash -c 'if [[ -n "$(ls -A _build/meson-logs/scanbuild/)" ]]; then echo "Scan build log found, assuming defects exist"; exit 1; fi'
  artifacts:
    when: on_failure
    paths:
      - _build/meson-logs/scanbuild

nightly:
  extends: '.publish_nightly'