[libdazzle/alatiera/bst-ci] Add initial CI



commit fb728820b17b79527a244396e9eb057d4698bb92
Author: Jordan Petridis <jpetridis gnome org>
Date:   Fri Sep 28 08:34:50 2018 +0300

    Add initial CI

 .gitlab-ci.yml | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..378e62b
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,64 @@
+variables:
+  ELEMENT: "core-deps/libdazzle.bst"
+
+stages:
+  - "build"
+
+bst:
+  image: "buildstream/buildstream-fedora:master-118-7babd55c"
+  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 --config build.conf --log-file ../logs/build.log --colors"
+    BST_SHA: "d423cdc761a808960ea21302f89b5383fa9558b4" #  1.2.2
+
+  before_script:
+    # Remove any installed buildstream binary
+    - pip3 uninstall -y buildstream
+
+    # 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 https://gitlab.gnome.org/GNOME/gnome-build-meta.git
+
+    # Ensure the log directory exists
+    - mkdir -p logs
+  script:
+    - cd gnome-build-meta/
+    - ${BST} track ${ELEMENT}
+    # This should not be needed
+    # FIXME: Attach issue bst #Number
+    - ${BST} build --track-all ${ELEMENT}
+    - ${BST} workspace open --no-checkout --track -f ${ELEMENT} ../
+    # - ${BST} build --track-all ${ELEMENT}
+    - |
+      ${BST} shell --build ${ELEMENT}
+      meson . builddir
+      ninja -C builddir
+      ninja -C builddir test
+      exit
+  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]