summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 21f605eee7104533edbadd9cd4045ae77e908b97 (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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml'

variables:
    GIT_SUBMODULE_STRATEGY: normal
    BUNDLE: "nautilus-dev.flatpak"

stages:
    - image
    - test
    - cross environment
    - deploy

flatpak devel:
    extends: '.flatpak'
    image: registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master
    variables:
        MANIFEST_PATH: "build-aux/flatpak/org.gnome.Nautilus.yml"
        FLATPAK_MODULE: "nautilus"
        RUNTIME_REPO: "https://flathub.org/repo/flathub.flatpakrepo"
        APP_ID: "org.gnome.NautilusDevel"

nightly:
    extends: '.publish_nightly'
    dependencies:
        - 'flatpak devel'

fedora latest:
    image:
        name: registry.gitlab.gnome.org/gnome/nautilus:latest
        entrypoint: ["/bin/sh", "-c"]
    stage: cross environment
    script:
        - meson _build .
        - cd _build
        - ninja test
    only:
        - web
        - master
    allow_failure: true

flatpak master:
    stage: cross environment
    dependencies: []
    variables:
        MANIFEST_PATH: "build-aux/flatpak/org.gnome.NautilusMaster.yml"
        FLATPAK_MODULE: "nautilus"
        RUNTIME_REPO: "https://nightly.gnome.org/gnome-nightly.flatpakrepo"
        APP_ID: "org.gnome.NautilusDevel"
    extends: .flatpak
    only:
        - schedules
        - web
        - tags
    allow_failure: true

style check:
    image: registry.gitlab.gnome.org/gnome/nautilus:latest
    stage: test
    artifacts:
        name: 'Style check artifacts'
        expose_as: 'Get style check diff here'
        when: on_failure
        paths:
            - 'uncrustify.diff'
        expire_in: 14 days
    script:
        - gcc data/lineup-parameters.c `pkg-config --cflags --libs gio-2.0 gio-unix-2.0` -o data/lineup-parameters
        - LANG=C.utf8 data/run-uncrustify.sh
        - git diff --exit-code | tee uncrustify.diff

update image:
    variables:
         STORAGE_DRIVER: vfs
         BUILDAH_FORMAT: docker
         BUILDAH_ISOLATION: chroot
    image: registry.fedoraproject.org/fedora:33
    stage: image
    script:
        - dnf install -y buildah runc
        - sed -i '/^mountopt =.*/d' /etc/containers/storage.conf
        - buildah bud --tag $CI_REGISTRY_IMAGE -f .gitlab/Dockerfile
        - buildah tag $CI_REGISTRY_IMAGE "$CI_REGISTRY_IMAGE:v$CI_JOB_ID"
        - buildah login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
        - buildah push $CI_REGISTRY_IMAGE
        - buildah push "$CI_REGISTRY_IMAGE:v$CI_JOB_ID"
    when: manual
    only:
        - web
        - master
    except:
        variables:
            - $CI_PROJECT_NAMESPACE != "GNOME"