nautilus/.gitlab-ci.yml
Ondrej Holy 949251868d ci: Run nightly job even if cross environment stage fails
Currently, the nightly job is skipped if fedora rawhide, or flatpak
master job fails. This is not wanted as the nightly should be published
if flatpak devel job succeeds. Let's allow failures of those jobs to
not block the deploy stage.
2020-04-15 16:12:34 +02:00

112 lines
3 KiB
YAML

include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml'
variables:
GIT_SUBMODULE_STRATEGY: normal
BUNDLE: "nautilus-dev.flatpak"
stages:
- triage
- 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"
MESON_ARGS: "-Dprofile=Devel -Dtests=all"
FLATPAK_MODULE: "nautilus"
RUNTIME_REPO: "https://flathub.org/repo/flathub.flatpakrepo"
APP_ID: "org.gnome.NautilusDevel"
nightly:
extends: '.publish_nightly'
dependencies:
- 'flatpak devel'
fedora rawhide:
image: registry.gitlab.gnome.org/gnome/nautilus:latest
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"
MESON_ARGS: "-Dprofile=Devel -Dtests=all"
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
triage:
image: ruby:2.4
stage: triage
script:
- gem install gitlab-triage
- gitlab-triage --token $TRIAGE_BOT_TOKEN --project-id $CI_PROJECT_PATH --host-url https://gitlab.gnome.org
only:
- schedules
triage:dry-run:
image: ruby:2.4
stage: triage
script:
- gem install gitlab-triage
- gitlab-triage --dry-run --token $TRIAGE_BOT_TOKEN --project-id $CI_PROJECT_PATH --host-url https://gitlab.gnome.org
only:
- schedules
when: manual
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:
DOCKER_TLS_CERTDIR: ""
image: docker:latest
stage: image
tags:
- privileged
services:
- docker:dind
script:
- docker build --tag $CI_REGISTRY_IMAGE .gitlab/
- docker tag $CI_REGISTRY_IMAGE "$CI_REGISTRY_IMAGE:v$CI_JOB_ID"
- docker login $CI_REGISTRY -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD
- docker push $CI_REGISTRY_IMAGE
when: manual
only:
- web
- master
except:
variables:
- $CI_PROJECT_NAMESPACE != "GNOME"