[libdazzle/alatiera/bst-ci] Add initial CI
- From: Jordan Petridis <jpetridis src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libdazzle/alatiera/bst-ci] Add initial CI
- Date: Sun, 21 Oct 2018 14:34:28 +0000 (UTC)
commit 622be87164f9563ce59a2604486114134a9ea027
Author: Jordan Petridis <jpetridis gnome org>
Date: Fri Sep 28 08:34:50 2018 +0300
Add initial CI
.gitlab-ci.yml | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 58 insertions(+)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..638ff69
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,58 @@
+stages:
+ - "build"
+
+.bst:
+ image: "buildstream/buildstream-fedora:master-113-499df6a5"
+ stage: "build"
+ variables:
+ # Store all the bst stuff under the "${CI_PROJECT_DIR}" directory.
+ # Note that GitLab CI will only cache stuff inside the "${CI_PROJECT_DIR}" folder.
+ XDG_CACHE_HOME: "${CI_PROJECT_DIR}/cache"
+ GET_SOURCES_ATTEMPTS: 3
+ BST: "bst --no-strict --config build.conf --log-file ../logs/build.log --colors"
+ BST_SHA: "10abe77fe8d77385d86f225b503d9185f4ef7f3a" # 1.2.3
+
+ before_script:
+ - dnf install -y xorg-x11-server-Xvfb
+
+ # Use specific version of BuildStream
+ - git clone https://gitlab.com/BuildStream/buildstream.git
+ - git -C buildstream/ checkout $BST_SHA
+ - pip3 install buildstream/
+
+ # Clone the GNOME moduleset
+ - git clone --depth=1 https://gitlab.gnome.org/GNOME/gnome-build-meta.git
+
+ # Ensure the log directory exists
+ - mkdir -p logs
+ script:
+ - cd gnome-build-meta/
+ # Ideally this would not be needed, but can't figure out a better way
+ - ${BST} build --track-all ${ELEMENT}
+ - ${BST} workspace open --no-checkout --track ${ELEMENT} ../
+ - |
+ xvfb-run -a -s "-screen 0 1024x768x24" \
+ dbus-run-session \
+ ${BST} shell --build ${ELEMENT} -- /bin/bash -c \
+ 'meson build && ninja -C build && NO_AT_BRIDGE=1 meson test -C build --print-errorlogs'
+ - ${BST} workspace close ${ELEMENT}
+
+ # Store all the downloaded git and ostree repos in the cache.
+ # This saves us fetching them on every build
+ cache:
+ key: "bst"
+ paths:
+ - "${XDG_CACHE_HOME}/buildstream/sources/"
+
+ # Store artifacts so we can inspect build failures
+ artifacts:
+ when: "always"
+ paths:
+ - "logs"
+ - "gnome-build-meta/project.refs"
+
+bst:
+ variables:
+ ELEMENT: "core-deps/libdazzle.bst"
+ extends: .bst
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]