[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: Thu, 18 Oct 2018 20:24:44 +0000 (UTC)
commit 6a40c3c253c32361021605acb070b75439473d7b
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..a377135
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,58 @@
+variables:
+ ELEMENT: "core-deps/libdazzle.bst"
+
+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.x86_64
+
+ # 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/
+ # - ${BST} track --deps=all ${ELEMENT}
+ # - ${BST} fetch ${ELEMENT}
+ # FIXME: this should not be needed
+ # - ${BST} build --track-all ${ELEMENT}
+ - ${BST} workspace open --no-checkout --track -f ${ELEMENT} ../
+ # - ${BST} build --track-all ${ELEMENT}
+ - ${BST} shell --build ${ELEMENT} -- /bin/bash -c 'meson build && ninja -C build && meson test -C build'
+ after_script:
+ - cd gnome-build-meta/
+ - 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"
+ - "project.refs"
+
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]