fontconfig: Branch 'main' - 2 commits

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

 



 .gitlab-ci.yml               |   81 ++++++++++++++++++++++++++++++++++++++++---
 .gitlab-ci/ci.template       |   37 +++++++++++++++++++
 .gitlab-ci/config.yml        |    4 +-
 .gitlab-ci/fedora-install.sh |   12 ++++++
 4 files changed, 128 insertions(+), 6 deletions(-)

New commits:
commit 59e53da82d471c20ba5e43b6aac07a9273303d50
Merge: 25f58a5 78235c0
Author: Akira TAGOH <akira@xxxxxxxxx>
Date:   Tue Mar 11 13:15:26 2025 +0000

    Merge branch 'ci-release' into 'main'
    
    ci: Add a release workflow
    
    See merge request fontconfig/fontconfig!366

commit 78235c01ef4bded37bd77c8a5f6e95fca87d56c7
Author: Akira TAGOH <akira@xxxxxxxxx>
Date:   Mon Mar 10 17:22:23 2025 +0900

    ci: Add a release workflow

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 989e5f9..f6578e0 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -42,8 +42,8 @@ variables:
 # changing these will force rebuilding the associated image
 # Note: these tags have no meaning and are not tied to a particular
 # fontconfig version
-  FEDORA_TAG:    '2025-02-17.3-c09ad6f8f869'
-  FREEBSD_TAG:   '2025-02-17.3-40e170f4e005'
+  FEDORA_TAG:    '2025-03-10.1-788fd421ac5d'
+  FREEBSD_TAG:   '2025-03-10.1-8c6b4797d3ca'
 
   FEDORA_EXEC:   'bash .gitlab-ci/fedora-install.sh'
   FREEBSD_EXEC:  'bash .gitlab-ci/freebsd-install.sh'
@@ -97,7 +97,7 @@ fedora:rawhide@container-prep:
   variables:
     GIT_STRATEGY: none
     FDO_DISTRIBUTION_VERSION: 'rawhide'
-    FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake clang-devel clang-tools-extra libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git git-clang-format docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 rust cargo bindgen-cli'
+    FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake clang-devel clang-tools-extra curl libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git git-clang-format docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 rust cargo bindgen-cli'
     FDO_DISTRIBUTION_TAG: $FEDORA_TAG
     FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC
 
@@ -107,7 +107,7 @@ fedora:41@container-prep:
   variables:
     GIT_STRATEGY: none
     FDO_DISTRIBUTION_VERSION: '41'
-    FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake clang-devel clang-tools-extra libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git git-clang-format docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 rust cargo bindgen-cli'
+    FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake clang-devel clang-tools-extra curl libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git git-clang-format docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 rust cargo bindgen-cli'
     FDO_DISTRIBUTION_TAG: $FEDORA_TAG
     FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC
 
@@ -117,7 +117,7 @@ fedora:40@container-prep:
   variables:
     GIT_STRATEGY: none
     FDO_DISTRIBUTION_VERSION: '40'
-    FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake clang-devel clang-tools-extra libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git git-clang-format docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 rust cargo bindgen-cli'
+    FDO_DISTRIBUTION_PACKAGES: '@buildsys-build autoconf automake clang-devel clang-tools-extra curl libtool gettext gettext-devel gperf expat-devel libxml2-devel freetype-devel json-c-devel git git-clang-format docbook-utils docbook-utils-pdf bubblewrap ninja-build wget python3-pip mingw64-expat mingw64-gcc mingw64-gettext mingw64-freetype mingw64-libxml2 rust cargo bindgen-cli'
     FDO_DISTRIBUTION_TAG: $FEDORA_TAG
     FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC
 
@@ -337,6 +337,18 @@ clang-format:
       - build*/test/*log
       - build*/fontconfig*/_build
       - build*/meson-logs/*
+      - build*/meson-dist/*
+
+.upload:
+  rules:
+    - if: $CI_COMMIT_TAG
+  variables:
+    PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/fontconfig/${CI_COMMIT_TAG}"
+  script:
+    - |
+      for f in $(pwd)/build-fontconfig-$CI_JOB_NAME_$CI_COMMIT_SHA-*/meson-dist/*; do
+        curl --location --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file $f ${PACKAGE_REGISTRY_URL}/$(basename $f)
+      done
 
 #######################################
 #                                     #
@@ -361,6 +373,7 @@ t_fedora:rawhide:autotools shared expat:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:autotools shared libxml2:
   extends:
     - .build@template
@@ -378,6 +391,7 @@ t_fedora:rawhide:autotools shared libxml2:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:meson shared expat:
   extends:
     - .build@template
@@ -394,6 +408,7 @@ t_fedora:rawhide:meson shared expat:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:meson shared libxml2:
   extends:
     - .build@template
@@ -410,6 +425,16 @@ t_fedora:rawhide:meson shared libxml2:
   needs:
     - 'fedora:rawhide@container-prep'
 
+t_fedora:rawhide:meson shared libxml2:upload:
+  needs:
+    - t_fedora:rawhide:meson shared libxml2
+  extends:
+    - .fdo.distribution-image@fedora
+    - .upload
+  variables:
+    FDO_DISTRIBUTION_VERSION: 'rawhide'
+    FDO_DISTRIBUTION_TAG: $FEDORA_TAG
+
 
 t_fedora:rawhide:autotools static expat:
   extends:
@@ -427,6 +452,7 @@ t_fedora:rawhide:autotools static expat:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:autotools static libxml2:
   extends:
     - .build@template
@@ -443,6 +469,7 @@ t_fedora:rawhide:autotools static libxml2:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:meson static expat:
   extends:
     - .build@template
@@ -459,6 +486,7 @@ t_fedora:rawhide:meson static expat:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:meson static libxml2:
   extends:
     - .build@template
@@ -475,6 +503,7 @@ t_fedora:rawhide:meson static libxml2:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:mingw autotools static libxml2:
   extends:
     - .build@template
@@ -493,6 +522,7 @@ t_fedora:rawhide:mingw autotools static libxml2:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:mingw meson static expat:
   extends:
     - .build@template
@@ -512,6 +542,7 @@ t_fedora:rawhide:mingw meson static expat:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:rawhide:meson static libxml2 fontations:
   extends:
     - .build@template
@@ -529,6 +560,7 @@ t_fedora:rawhide:meson static libxml2 fontations:
     - 'fedora:rawhide@container-prep'
 
 
+
 t_fedora:41:autotools shared expat:
   extends:
     - .build@template
@@ -545,6 +577,7 @@ t_fedora:41:autotools shared expat:
     - 'fedora:41@container-prep'
 
 
+
 t_fedora:41:autotools shared libxml2:
   extends:
     - .build@template
@@ -562,6 +595,7 @@ t_fedora:41:autotools shared libxml2:
     - 'fedora:41@container-prep'
 
 
+
 t_fedora:41:meson shared expat:
   extends:
     - .build@template
@@ -578,6 +612,7 @@ t_fedora:41:meson shared expat:
     - 'fedora:41@container-prep'
 
 
+
 t_fedora:41:meson shared libxml2:
   extends:
     - .build@template
@@ -605,6 +640,14 @@ t_fedora:41:meson shared libxml2:
 
 
 
+
+
+
+
+
+
+
+
 
 
 
@@ -625,6 +668,7 @@ t_fedora:40:autotools shared expat:
     - 'fedora:40@container-prep'
 
 
+
 t_fedora:40:autotools shared libxml2:
   extends:
     - .build@template
@@ -642,6 +686,7 @@ t_fedora:40:autotools shared libxml2:
     - 'fedora:40@container-prep'
 
 
+
 t_fedora:40:meson shared expat:
   extends:
     - .build@template
@@ -658,6 +703,7 @@ t_fedora:40:meson shared expat:
     - 'fedora:40@container-prep'
 
 
+
 t_fedora:40:meson shared libxml2:
   extends:
     - .build@template
@@ -685,6 +731,14 @@ t_fedora:40:meson shared libxml2:
 
 
 
+
+
+
+
+
+
+
+
 
 
 
@@ -707,6 +761,7 @@ t_freebsd:14.1:autotools shared expat:
     - 'freebsd:14.1@container-prep'
 
 
+
 t_freebsd:14.1:autotools shared libxml2:
   extends:
     - .build-in-qemu@template
@@ -725,6 +780,7 @@ t_freebsd:14.1:autotools shared libxml2:
     - 'freebsd:14.1@container-prep'
 
 
+
 t_freebsd:14.1:meson shared expat:
   extends:
     - .build-in-qemu@template
@@ -742,6 +798,7 @@ t_freebsd:14.1:meson shared expat:
     - 'freebsd:14.1@container-prep'
 
 
+
 t_freebsd:14.1:meson shared libxml2:
   extends:
     - .build-in-qemu@template
@@ -759,6 +816,7 @@ t_freebsd:14.1:meson shared libxml2:
     - 'freebsd:14.1@container-prep'
 
 
+
 #######################################
 #                                     #
 #            deploy stage             #
@@ -795,8 +853,21 @@ pages:
   rules:
     - if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE != "merge_request_event"
 
+make-release:
+  stage: deploy
+  image: registry.gitlab.com/gitlab-org/cli:latest
+  rules:
+    - if: $CI_COMMIT_TAG
+  variables:
+    PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/fontconfig/${CI_COMMIT_TAG}"
+  script:
+    - glab auth login -h ${CI_SERVER_HOST} -j ${CI_JOB_TOKEN}
+    - |
+      glab release create ${CI_COMMIT_TAG} --name "Release ${CI_COMMIT_TAG}" -a "[{\"name\": \"fontconfig-${CI_COMMIT_TAG}.tar.xz\", \"url\": \"${PACKAGE_REGISTRY_URL}/fontconfig-${CI_COMMIT_TAG}.tar.xz\"}, {\"name\": \"fontconfig-${CI_COMMIT_TAG}.tar.xz (sha256sum)\", \"url\": \"${PACKAGE_REGISTRY_URL}/fontconfig-${CI_COMMIT_TAG}.tar.xz.sha256sum\"}]"
+
 workflow:
   rules:
+    - if: $CI_COMMIT_TAG
     - if: $CI_PIPELINE_SOURCE == "merge_request_event"
     - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS
       when: never
diff --git a/.gitlab-ci/ci.template b/.gitlab-ci/ci.template
index b2eb0c5..e993695 100644
--- a/.gitlab-ci/ci.template
+++ b/.gitlab-ci/ci.template
@@ -299,6 +299,18 @@ clang-format:
       - build*/test/*log
       - build*/fontconfig*/_build
       - build*/meson-logs/*
+      - build*/meson-dist/*
+
+.upload:
+  rules:
+    - if: $CI_COMMIT_TAG
+  variables:
+    PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/fontconfig/${CI_COMMIT_TAG}"
+  script:
+    - |
+      for f in $(pwd)/build-fontconfig-$CI_JOB_NAME_$CI_COMMIT_SHA-*/meson-dist/*; do
+        curl --location --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file $f ${PACKAGE_REGISTRY_URL}/$(basename $f)
+      done
 
 #######################################
 #                                     #
@@ -334,6 +346,18 @@ t_{{distro.name}}:{{version}}:{{build.name}}:
     - '{{distro.name}}:{{version}}@container-prep'
 {% endif %}
 
+{% if 'upload' in build and build.upload == version %}
+t_{{distro.name}}:{{version}}:{{build.name}}:upload:
+  needs:
+    - t_{{distro.name}}:{{version}}:{{build.name}}
+  extends:
+    - .fdo.distribution-image@{{distro.name}}
+    - .upload
+  variables:
+    FDO_DISTRIBUTION_VERSION: '{{version}}'
+    FDO_DISTRIBUTION_TAG: ${{distro.name.upper()}}_TAG
+{% endif %}
+
 {% endfor %}
 {% endfor %}
 {% endfor %}
@@ -374,8 +398,21 @@ pages:
   rules:
     - if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE != "merge_request_event"
 
+make-release:
+  stage: deploy
+  image: registry.gitlab.com/gitlab-org/cli:latest
+  rules:
+    - if: $CI_COMMIT_TAG
+  variables:
+    PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/fontconfig/${CI_COMMIT_TAG}"
+  script:
+    - glab auth login -h ${CI_SERVER_HOST} -j ${CI_JOB_TOKEN}
+    - |
+      glab release create ${CI_COMMIT_TAG} --name "Release ${CI_COMMIT_TAG}" -a "[{\"name\": \"fontconfig-${CI_COMMIT_TAG}.tar.xz\", \"url\": \"${PACKAGE_REGISTRY_URL}/fontconfig-${CI_COMMIT_TAG}.tar.xz\"}, {\"name\": \"fontconfig-${CI_COMMIT_TAG}.tar.xz (sha256sum)\", \"url\": \"${PACKAGE_REGISTRY_URL}/fontconfig-${CI_COMMIT_TAG}.tar.xz.sha256sum\"}]"
+
 workflow:
   rules:
+    - if: $CI_COMMIT_TAG
     - if: $CI_PIPELINE_SOURCE == "merge_request_event"
     - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS
       when: never
diff --git a/.gitlab-ci/config.yml b/.gitlab-ci/config.yml
index 13a6f11..f98bfbe 100644
--- a/.gitlab-ci/config.yml
+++ b/.gitlab-ci/config.yml
@@ -1,4 +1,4 @@
-.default_tag: &default_tag "2025-02-17.3"
+.default_tag: &default_tag "2025-03-10.1"
 
 distributions:
   - name: fedora
@@ -27,6 +27,7 @@ distributions:
           FC_BUILD_TYPE: shared
           FC_XML_BACKEND: expat
       - name: "meson shared libxml2"
+        upload: 'rawhide'
         variables:
           FC_BUILDSYS: meson
           FC_BUILD_TYPE: shared
@@ -123,6 +124,7 @@ packages:
         "automake",
         "clang-devel",
         "clang-tools-extra",
+        "curl",
         "libtool",
         "gettext",
         "gettext-devel",
diff --git a/.gitlab-ci/fedora-install.sh b/.gitlab-ci/fedora-install.sh
index 16c8d73..773ebfb 100644
--- a/.gitlab-ci/fedora-install.sh
+++ b/.gitlab-ci/fedora-install.sh
@@ -2,6 +2,18 @@
 
 set -ex
 
+# Disable fedora-cisco-openh264 repo to avoid signature verification fail during
+# signature migration for new release.
+# We don't need it.
+dnf --version|grep dnf5 > /dev/null || ret=$?
+if [[ $ret -eq 0 ]]; then
+  dnf -y install dnf5-plugins
+  dnf -y config-manager setopt fedora-cisco-openh264.enabled=0
+else
+  dnf -y install dnf-plugins-core
+  dnf -y config-manager --set-disabled fedora-cisco-openh264
+fi
+
 # workaround to avoid conflict between systemd and systemd-standalone-sysusers
 dnf -y swap systemd-standalone-sysusers systemd
 dnf -y install wine



[Index of Archives]     [Fedora Fonts]     [Fedora Users]     [Fedora Cloud]     [Kernel]     [Fedora Packaging]     [Fedora Desktop]     [PAM]     [Gimp Graphics Editor]     [Yosemite News]

  Powered by Linux