diff options
author | Jordan Petridis <jpetridis@gnome.org> | 2018-12-05 17:44:41 +0200 |
---|---|---|
committer | Carlos Soriano <csoriano1618@gmail.com> | 2018-12-10 10:11:20 +0000 |
commit | 6720009d2628eff4aa7c702e96391d9f918b7afe (patch) | |
tree | 64df7f294db704476db46962360a3af9b6ab9571 /.gitlab-ci.yml | |
parent | 19d141764a35212d9a19a0224c6c4a153c81bfbf (diff) | |
download | nautilus-6720009d2628eff4aa7c702e96391d9f918b7afe.tar.gz |
CI: Use the new citemplate repo wiht `include:`
This is a new gitlab feature which allows to import a file from
somewhere else with predefined config and jobs. This helps us
centralize the configuration of the flatpak jobs and keep them
in sync easily.
[1] https://docs.gitlab.com/ce/ci/yaml/README.html#include
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r-- | .gitlab-ci.yml | 87 |
1 files changed, 21 insertions, 66 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1c308559a..40ac02b75 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,5 @@ +include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml' + variables: GIT_SUBMODULE_STRATEGY: normal BUNDLE: "nautilus-dev.flatpak" @@ -14,39 +16,8 @@ stages: - cd _build - ninja test -.flatpak_template: &flatpak - script: - - flatpak-builder --stop-at=${FLATPAK_MODULE} app ${MANIFEST_PATH} - # Make sure to keep this in sync with the Flatpak manifest, all arguments - # are passed except the config-args because we build it ourselves - - flatpak build app meson --prefix=/app --libdir=lib ${MESON_ARGS} _build - - flatpak build app ninja -C _build install - - flatpak-builder --finish-only --repo=repo app ${MANIFEST_PATH} - # Run automatic tests inside the Flatpak env - # Setting LANG to avoid Tracker complaining and falling back to the same value, - # and setting NO_AT_BRIDGE, so that atk-bridge isn’t initialized, preventing - # annoying warnings that don’t affect the kinds of tests that we run. - - | - xvfb-run -a -s "-screen 0 1024x768x24" \ - flatpak build \ - --env=LANG=C.UTF-8 \ - --env=NO_AT_BRIDGE=1 \ - app \ - dbus-run-session meson test -C _build - # Generate a Flatpak bundle - - flatpak build-bundle repo ${BUNDLE} --runtime-repo=${RUNTIME_REPO} ${DBUS_ID} - artifacts: - paths: - - ${BUNDLE} - - _build/meson-logs/ - # The Flatpak bundle is always generated at the end, meaning that there - # won’t be one in case of failure, but the logs will be available for - # our expert investigators to dissect. - when: always - expire_in: 2 days - -.flatpak_gcovr_template: &flatpak_gcovr - extends: .flatpak_template +.flatpak_gcovr: + extends: .flatpak after_script: # Generate coverage report - cd _build @@ -69,8 +40,14 @@ stages: --exclude=../test/ coverage: '/^branches:.*\s+(\S+\%).*$/' artifacts: + when: 'always' + # overwrite the path array of the '.flatpak' job paths: - - _build/coverage.html + - "${BUNDLE}" + - '_build/meson-logs/meson-log.txt' + - '_build/meson-logs/testlog.txt' + - '_build/coverage.html' + expire_in: 2 days flatpak devel: image: registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:3.30 @@ -80,38 +57,18 @@ flatpak devel: MESON_ARGS: "-Dprofile=Devel -Dtests=all -Db_coverage=true" FLATPAK_MODULE: "nautilus" RUNTIME_REPO: "https://sdk.gnome.org/gnome.flatpakrepo" - DBUS_ID: "org.gnome.NautilusDevel" - <<: *flatpak_gcovr + APP_ID: "org.gnome.NautilusDevel" + extends: '.flatpak_gcovr' review: stage: deploy dependencies: - - "flatpak devel" - script: - - echo "Generating flatpak deployment" - artifacts: - paths: - - ${BUNDLE} - expire_in: 30 days - environment: - name: review/$CI_COMMIT_REF_NAME - url: https://gitlab.gnome.org/$CI_PROJECT_PATH/-/jobs/$CI_JOB_ID/artifacts/raw/${BUNDLE} - on_stop: stop_review - except: - - master@GNOME/nautilus - - tags + - 'flatpak devel' + extends: '.review' stop_review: stage: deploy - script: - - echo "Stopping flatpak deployment" - when: manual - environment: - name: review/$CI_COMMIT_REF_NAME - action: stop - except: - - master@GNOME/nautilus - - tags + extends: '.stop_review' fedora rawhide: image: fedora:rawhide @@ -186,30 +143,28 @@ opensuse tumbleweed: - tags flatpak master: - image: registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master stage: cross_environment variables: MANIFEST_PATH: "build-aux/flatpak/org.gnome.NautilusMaster.yml" MESON_ARGS: "-Dprofile=Master -Dtests=all -Db_coverage=true" FLATPAK_MODULE: "nautilus" RUNTIME_REPO: "https://sdk.gnome.org/gnome-nightly.flatpakrepo" - DBUS_ID: "org.gnome.NautilusMaster" - <<: *flatpak + APP_ID: "org.gnome.NautilusMaster" + extends: .flatpak only: - schedules - web - tags flatpak gtk4: - image: registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master stage: cross_environment variables: MANIFEST_PATH: "build-aux/flatpak/org.gnome.NautilusGtk4.yml" MESON_ARGS: "-Dprofile=Gtk4 -Dtests=all -Db_coverage=true" FLATPAK_MODULE: "nautilus" RUNTIME_REPO: "https://sdk.gnome.org/gnome-nightly.flatpakrepo" - DBUS_ID: "org.gnome.NautilusGtk4" - <<: *flatpak + APP_ID: "org.gnome.NautilusGtk4" + extends: .flatpak only: - schedules - web @@ -242,4 +197,4 @@ triage:dry-run: - gitlab-triage --dry-run --token $nautilus_bot_token --project-id $CI_PROJECT_PATH --host-url https://gitlab.gnome/org only: - schedules - when: manual
\ No newline at end of file + when: manual |