[geocode-glib/pgriffis/libsoup3] ci: Build both soup2 and soup3 variants




commit 338d4a757f327208c4b596da90e9df88e9215532
Author: Patrick Griffis <pgriffis igalia com>
Date:   Mon Sep 13 12:19:11 2021 -0500

    ci: Build both soup2 and soup3 variants
    
    Use check-abi upstream to run our ABI checks, and use the new
    --*-parameters options to force different soup backends.

 .ci/check-abi  | 113 ---------------------------------------------------------
 .gitlab-ci.yml |  53 ++++++++++++++++++++++++---
 2 files changed, 48 insertions(+), 118 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d45a435..c8afd06 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -13,18 +13,61 @@ variables:
       gcc-c++
       glibc-devel
       libabigail
-    SOUP2_DEPS:
-      libsoup-devel
 
-build-fedora:
+.build:
   image: fedora:latest
+  script:
+    - meson _build -Dsoup2=${SOUP2_ENABLED}
+    - ninja -C _build install
+    - ninja -C _build test
+  artifacts:
+    name: "geocode-glib-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
+    when: on_failure
+    paths:
+      - "**/meson-logs/*"
+
+build-fedora-soup2:
+  extends: .build
+  variables:
+    SOUP2_ENABLED: 'true'
+    SOUP_DEPS:
+      libsoup-devel
   before_script:
     # Undo delangification present in the Fedora Docker images
     - rm -f /etc/rpm/macros.image-language-conf
     - dnf reinstall -y glib2 glibc
-    - dnf install -y $COMMON_DEPS $SOUP2_DEPS
+    - dnf install -y $COMMON_DEPS $SOUP_DEPS
   script:
     - meson _build
     - ninja -C _build install
     - ninja -C _build test
-    - ./.ci/check-abi ${LAST_ABI_BREAK} $(git rev-parse HEAD)
+  after_script:
+    - curl https://gitlab.freedesktop.org/hadess/check-abi/-/raw/main/contrib/check-abi-fedora.sh | bash
+    - check-abi --new-parameters="-Dsoup2=true" ${LAST_ABI_BREAK} $(git rev-parse HEAD)
+
+build-fedora-soup3:
+  extends: .build
+  variables:
+    SOUP2_ENABLED: 'false'
+    SOUP_DEPS:
+      libnghttp2-devel
+      sqlite-devel
+      libpsl-devel
+  before_script:
+    # Undo delangification present in the Fedora Docker images
+    - rm -f /etc/rpm/macros.image-language-conf
+    - dnf reinstall -y glib2 glibc
+    - dnf install -y $COMMON_DEPS $SOUP_DEPS
+    # Tasks specific to soup3 (glib 2.70, libsoup 3)
+    - git clone https://gitlab.gnome.org/GNOME/glib.git && pushd glib
+    - git checkout 2.69.3
+    - meson _build --prefix=/usr
+    - ninja -C _build install
+    - popd
+    - git clone --depth=1 https://gitlab.gnome.org/GNOME/libsoup.git && pushd libsoup
+    - meson _build --prefix=/usr -Dtls_check=false
+    - ninja -C _build install
+    - popd
+  after_script:
+    - curl https://gitlab.freedesktop.org/hadess/check-abi/-/raw/main/contrib/check-abi-fedora.sh | bash
+    - check-abi --new-parameters="-Dsoup2=true" ${LAST_ABI_BREAK} $(git rev-parse HEAD)


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