[gimp/wip/Jehan/incremental-win-installer-improvements] New stage because it just takes too long to build the installer.



commit f81c0da8e26a8f7fe49110fee56b8c8283c7a372
Author: Jehan <jehan girinstud io>
Date:   Fri May 21 22:54:43 2021 +0200

    New stage because it just takes too long to build the installer.

 .gitlab-ci.yml | 70 ++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 file changed, 58 insertions(+), 12 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ba037dcd1d..0d79cc02e6 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -29,8 +29,9 @@ stages:
   - prepare
   - dependencies
   - gimp
-  - analysis
+  - packaging
   - distribution
+  - analysis
 
 variables:
   GIT_DEPTH: "1"
@@ -279,22 +280,45 @@ gimp-win64-native:
   script:
     - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
     - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/build-gimp-msys2.sh"
-    - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/package-gimp-msys2.sh"
-    - cd gimp-w64
-    - C:\msys64\usr\bin\bash -lc "bash -x ../build/windows/gitlab-ci/split-debug-msys2.sh"
   artifacts:
     name: "${CI_JOB_NAME}-${CI_COMMIT_REF_SLUG}"
     when: always
     expire_in: 1 day
     paths:
     - _build-w64
-    - gimp-w64
+    - _install-w64
     - build/windows/installer/lang/
   cache:
     paths:
     - _ccache/
   needs: ["deps-win64-native"]
 
+packaging-win64-native:
+  rules:
+    # On releases.
+    - if: '$CI_COMMIT_TAG != null'
+    # Custom builds though web GUI, API or schedules.
+    - if: '$GIMP_CI_WIN_INSTALLER != null'
+  stage: packaging
+  variables:
+    MSYSTEM: "MINGW64"
+    CHERE_INVOKING: "yes"
+  tags:
+    - win32-ps
+  script:
+    - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
+    - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/package-gimp-msys2.sh"
+    - cd gimp-w64
+    - C:\msys64\usr\bin\bash -lc "bash -x ../build/windows/gitlab-ci/split-debug-msys2.sh"
+  artifacts:
+    name: "${CI_JOB_NAME}-${CI_COMMIT_REF_SLUG}"
+    when: always
+    expire_in: 1 day
+    paths:
+    - gimp-w64
+    - build/windows/installer/lang/
+  needs: ["gimp-win64-native"]
+
 ## WINDOWS 32-bit CI (native MSYS2) ##
 
 deps-win32-native:
@@ -337,20 +361,42 @@ gimp-win32-native:
   script:
     - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
     - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/build-gimp-msys2.sh"
-    - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/package-gimp-msys2.sh"
-    - cd gimp-w32
-    - C:\msys64\usr\bin\bash -lc "bash -x ../build/windows/gitlab-ci/split-debug-msys2.sh"
   artifacts:
     name: "${CI_JOB_NAME}-${CI_COMMIT_REF_SLUG}"
     when: always
     expire_in: 1 day
     paths:
-    - gimp-w32
+    - _install-w32
   cache:
     paths:
     - _ccache/
   needs: ["deps-win32-native"]
 
+packaging-win32-native:
+  rules:
+    # On releases.
+    - if: '$CI_COMMIT_TAG != null'
+    # Custom builds though web GUI, API or schedules.
+    - if: '$GIMP_CI_WIN_INSTALLER != null'
+  stage: packaging
+  variables:
+    MSYSTEM: "MINGW32"
+    CHERE_INVOKING: "yes"
+  tags:
+    - win32-ps
+  script:
+    - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
+    - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/package-gimp-msys2.sh"
+    - cd gimp-w32
+    - C:\msys64\usr\bin\bash -lc "bash -x ../build/windows/gitlab-ci/split-debug-msys2.sh"
+  artifacts:
+    name: "${CI_JOB_NAME}-${CI_COMMIT_REF_SLUG}"
+    when: always
+    expire_in: 1 day
+    paths:
+    - gimp-w32
+  needs: ["gimp-win32-native"]
+
 ## WINDOWS 64-bit CI (cross-build crossroad) ##
 
 deps-win64:
@@ -529,8 +575,8 @@ win-installer-nightly:
     - win32-ps
   stage: distribution
   dependencies:
-    - gimp-win64-native
-    - gimp-win32-native
+    - packaging-win64-native
+    - packaging-win32-native
   artifacts:
     name: "${CI_JOB_NAME}-${CI_COMMIT_REF_SLUG}"
     when: always
@@ -540,7 +586,7 @@ win-installer-nightly:
   script:
     - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
     - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/installer-gimp-msys2.sh"
-  needs: ["gimp-win32-native", "gimp-win64-native"]
+  needs: ["packaging-win32-native", "packaging-win64-native"]
 
 sources:
   rules:


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