nautilus/.gitlab-ci.yml
Ondrej Holy c90d787e1f ci: Use Buildah instead of Docker to generate images
The GNOME runners are no more privileged and thus it is not possible to
use Docker from the pipeline. Let's use Buildah instead Docker to fix
the image generation.
2020-11-20 09:38:24 +01:00

113 lines
3.1 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"
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:
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
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:
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"