[gnome-calendar] ci: Rework CI steps
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-calendar] ci: Rework CI steps
- Date: Sun, 18 Feb 2018 19:02:32 +0000 (UTC)
commit d64a03a57df8ab41426f198455eee84a37c0a043
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Sun Feb 18 19:01:46 2018 +0000
ci: Rework CI steps
.gitlab-ci.yml | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 57 insertions(+), 7 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 53adc4a8..a0970f04 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,15 +1,65 @@
image: fedora:rawhide
stages:
- build
+ - test
+ - deploy
+
+variables:
+ DEPENDENCIES: gcc meson ninja-build gettext gtk-doc glib2-devel
+ gtk3-devel gsettings-desktop-schemas-devel git
+ gnome-online-accounts-devel libdazzle-devel
+ evolution-data-server-devel libgweather-devel
before_script:
- - dnf install -y gcc meson ninja-build gettext gtk-doc glib2-devel gtk3-devel
- gnome-online-accounts-devel evolution-data-server-devel libdazzle-devel
- gsettings-desktop-schemas-devel libgweather-devel
+ - dnf update -y --nogpgcheck && dnf install -y --nogpgcheck $DEPENDENCIES
+
+
+##
+# Stage: Build
+#
+# Checks if GNOME Calendar is properly building and installing. This is the
+# most important stage of the CI, and no MR should ever be merged if it breaks
+# any of them.
+##
+build:
+ stage: build
+ script:
+ - meson . _build
+ - ninja -C _build
-build-calendar:
+install:
stage: build
script:
- - meson . _build
- - ninja -C _build
- - ninja -C _build install
+ - meson . _build
+ - ninja -C _build
+ - ninja -C _build install
+
+
+##
+# Stage: Test
+#
+# Runs the unit tests and makes sure the new changes does not reintroduce bugs
+# or breaks something unrelated.
+##
+test:
+ stage: test
+ script:
+ - meson . _build
+ - ninja -C _build
+ - meson test -C _build
+
+
+##
+# Stage: Deploy
+#
+# Checks if the released version is perfectly functional.
+##
+deploy:
+ stage: deploy
+ script:
+ - meson . _build
+ - ninja -C _build
+ - meson test -C _build
+ - ninja dist -C _build
+ only:
+ - tags
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]