[libdazzle/alatiera/bst-ci] Update for 2022



commit 918f9e9bcc50aaba76de101a4a5b7963fc4bc259
Author: Jordan Petridis <jordan centricular com>
Date:   Wed Oct 5 14:54:10 2022 +0200

    Update for 2022

 .gitlab-ci.yml | 46 ++++++++++++++++++++++++----------------------
 1 file changed, 24 insertions(+), 22 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4d8a609..8f4f6be 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,9 +1,19 @@
 stages:
   - "build"
 
+variables:
+  DOCKER_REGISTRY: "registry.gitlab.com/freedesktop-sdk/infrastructure/freedesktop-sdk-docker-images"
+  DOCKER_IMAGE_ID: "a470cd0ecc1a005e9456b98845455ed1bcdc6b7b"
+  # FIXME: fetch them from gbm template yml maybe?
+  # BST: "bst --config .gitlab-ci/buildstream.conf --log-file logs/build.log --colors"
+  BST_NO_PUSH: "bst --config .gitlab-ci/buildstream-nopush.conf --log-file logs/build.log --colors"
+
 .bst:
-  image: "buildstream/buildstream-fedora:master-113-499df6a5"
+  image: "${DOCKER_REGISTRY}/bst16:${DOCKER_IMAGE_ID}"
   stage: "build"
+  tags:
+    - x86_64
+    - gnome-build-meta
   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.
@@ -15,11 +25,6 @@ stages:
   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
 
@@ -27,28 +32,25 @@ stages:
     - mkdir -p logs
   script:
     - cd gnome-build-meta/
-    - ${BST} build --track-all --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/"
+    - ${BST_NO_PUSH} build --track-all --all ${ELEMENT}
+    - ${BST_NO_PUSH} workspace open --no-checkout --track ${ELEMENT} ../
+    # FIXME: probably missing things from the image
+    # - |
+    #   xvfb-run -a -s "-screen 0 1024x768x24" \
+    #     dbus-run-session \
+    #     ${BST_NO_PUSH} shell --build ${ELEMENT} -- /bin/bash -c \
+    #     'meson build && meson compile -C build && NO_AT_BRIDGE=1 meson test -C build --print-errorlogs'
+    - >-
+      ${BST_NO_PUSH} shell --build ${ELEMENT} -- /bin/bash -c
+      'meson build && meson compile -C build && NO_AT_BRIDGE=1 meson test -C build --print-errorlogs'
+  after_script:
+    - ${BST_NO_PUSH} workspace close ${ELEMENT}
 
   # Store artifacts so we can inspect build failures
   artifacts:
     when: "always"
     paths:
       - "logs"
-      - "gnome-build-meta/project.refs"
 
 bst:
   variables:


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]