[gimp/wip/Jehan/improve-gitlab-ci] gitlab-ci: improve the CI for releases.




commit f6bde56cd093e35cba5936af579040def3eb3638
Author: Jehan <jehan girinstud io>
Date:   Mon Apr 26 17:45:11 2021 +0200

    gitlab-ci: improve the CI for releases.
    
    - Only publish the bz2 tarball because that's what we currently provide
      on download.gimp.org (let's see in the future for the xz tarball).
    - Generate also a sha512 checksum. It's better to do it on the CI rather
      than on the download server, otherwise it wouldn't protect against
      transfer errors (from gitlab to download server).
    - Rename the checksum files to ${filename}.SHA256SUMS (512 respectively)
      for easy download without name clash with the global files listing all
      the previous releases.
    - Disable all meson jobs for tagged releases. They are currently not
      reliable and may fail randomly (see issue #6257), even though without
      code problems. It's ok for regular builds, but not for tagged builds,
      which we need as reliable as possible. The really important job is the
      distcheck one for tags.

 .gitlab-ci.yml | 31 +++++++++++++++++++++++++++----
 1 file changed, 27 insertions(+), 4 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 061aa25e1f..6e2863e4c3 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -35,6 +35,8 @@ build-image:
 
 
 build-image-win64:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: prepare
   variables:
     GIT_STRATEGY: none
@@ -54,6 +56,8 @@ build-image-win64:
 
 
 build-image-win32:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: prepare
   variables:
     GIT_STRATEGY: none
@@ -155,6 +159,8 @@ gimp-distcheck-debian:
     - make -j "$(nproc)" distcheck
 
 gimp-meson-debian:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   extends: .gimp-debian-base
   script:
     - meson _build
@@ -163,6 +169,8 @@ gimp-meson-debian:
     - ninja -C _build test
 
 gimp-clang-debian:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   extends: .gimp-debian-base
   variables:
     CC: "clang"
@@ -179,6 +187,8 @@ gimp-clang-debian:
 ## WINDOWS 64-bit CI ##
 
 deps-win64:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: dependencies
   image: $CI_REGISTRY_IMAGE:build-win64-latest
   variables:
@@ -210,6 +220,8 @@ deps-win64:
   needs: ["build-image-win64"]
 
 gimp-win64:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: gimp
   image: $CI_REGISTRY_IMAGE:build-win64-latest
   dependencies:
@@ -241,6 +253,8 @@ gimp-win64:
 ## WINDOWS 32-bit CI ##
 
 deps-win32:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: dependencies
   image: $CI_REGISTRY_IMAGE:build-win32-latest
   variables:
@@ -269,6 +283,8 @@ deps-win32:
   needs: ["build-image-win32"]
 
 gimp-win32:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: gimp
   image: $CI_REGISTRY_IMAGE:build-win32-latest
   dependencies:
@@ -326,14 +342,19 @@ sources:
     when: always
     expire_in: 2 days
     paths:
-    - gimp-*.tar.*
-    - SHA256SUMS
+    - gimp-*.tar.bz2
+    - gimp-*.tar.bz2.SHA256SUMS
+    - gimp-*.tar.bz2.SHA512SUMS
   script:
-    - mv _build/gimp-*.tar.* .
-    - sha256sum gimp-*.tar.* > SHA256SUMS
+    - mv _build/gimp-*.tar.bz2 .
+    - FILENAME=`ls gimp-*.tar.bz2` &&
+      sha256sum gimp-*.tar.bz2 > ${FILENAME}.SHA256SUMS &&
+      sha512sum gimp-*.tar.bz2 > ${FILENAME}.SHA512SUMS
   needs: ["gimp-distcheck-debian"]
 
 win64-nightly:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: distribution
   dependencies:
     - gimp-win64
@@ -409,6 +430,8 @@ win64-nightly:
   needs: ["gimp-win64"]
 
 win32-nightly:
+  rules:
+    - if: '$CI_COMMIT_TAG == null'
   stage: distribution
   dependencies:
     - gimp-win32


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