[gimp/wip/Jehan/more-CI-build: 11/13] gitlab-ci: improve artifacts settings.



commit 5e1f361faa4c4365014e93faa86ecd74fd778936
Author: Jehan <jehan girinstud io>
Date:   Tue Oct 1 18:36:07 2019 +0200

    gitlab-ci: improve artifacts settings.
    
    First replace the "when: on_failure" rule by a "when: always". We indeed
    always want to get log artifact so that we can study a build if
    necessary (neither only on failure nor on success; really on all cases,
    since even an apparently successful build may have issues we might want
    to diagnose).
    
    Also expire all artifacts at 1 week (it seems the default on GNOME's
    Gitlab is 4 weeks; we don't need to keep these so long. Even a few days
    might be enough actually).
    
    As for the artifacts contents, keep the build dirs rather than the
    install dirs. Build dirs allow to check configuration logs and other
    kind of logs which are the most useful when diagnosing a failed build.
    Now install dirs are also interesting. Maybe we should provide them
    again at some point. We'll see. For now I comment them out.
    Still keep the install dir for dependencies though, since it seems this
    is how data are passed from one job to another.
    Note that ideally we would like to provide different artifacts depending
    on failure or success but apparently this is currently not possible.
    See: https://gitlab.com/gitlab-org/gitlab/issues/18744
    
    Also not sure why for GIMP, the CI was only keeping the build app/tests/
    directory. We should really keep the whole dir.

 .gitlab-ci.yml | 31 +++++++++++++------------------
 1 file changed, 13 insertions(+), 18 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 08464f97d8..851cb1e1cc 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -17,8 +17,11 @@ cache:
 .babl-base:
   stage: babl
   artifacts:
+    expire_in: 1 week
+    when: always
     paths:
     - "${INSTALL_DIR}"
+    - _babl/_build
   variables:
     GIT_DEPTH: "5"
   before_script:
@@ -56,8 +59,11 @@ babl-git:
 .gegl-base:
   stage: gegl
   artifacts:
+    expire_in: 1 week
+    when: always
     paths:
     - "${INSTALL_DIR}"
+    - _gegl/_build
   variables:
     GIT_DEPTH: "5"
   before_script:
@@ -111,8 +117,12 @@ gegl-git:
 .gimp-base:
   stage: gimp
   artifacts:
+    expire_in: 1 week
+    when: always
+    name: "app-build-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
     paths:
-    - "${INSTALL_DIR}"
+    - _build
+    #- "${INSTALL_DIR}"
   variables:
     GIT_DEPTH: "5"
   before_script:
@@ -169,12 +179,6 @@ gegl-git:
         --with-lua=force
     - make -j "$(nproc)"
     # - make check
-  artifacts:
-    name: "app-tests-logs-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
-    when: on_failure
-    expire_in: 1 week
-    paths:
-      - _build/app/tests/
 
 .gimp-meson:
   extends: .gimp-base
@@ -186,13 +190,6 @@ gegl-git:
       -Dlua=always
     - ninja -C _build
     # - ninja test
-  artifacts:
-    name: "app-tests-logs-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
-    when: on_failure
-    expire_in: 1 week
-    paths:
-      - _build/app/tests/
-
 
 build-git-autotools:
   extends: .gimp-autotools
@@ -221,9 +218,6 @@ build-git-meson:
 .gimp-x86_64-w64-mingw32-base:
   image: fedora:30
   stage: gimp
-  artifacts:
-    paths:
-    - "${INSTALL_DIR}"
   before_script:
     - dnf install --assumeyes --setopt=cachedir=`pwd`/dnf_cache --verbose
         automake
@@ -273,8 +267,9 @@ build-git-x86_64-w64-mingw32-meson:
     - crossroad w64 gimp --run="build/windows/crossbuild-gitlab-ci.sh"
   artifacts:
     name: "app-tests-logs-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
-    when: on_failure
+    when: always
     expire_in: 1 week
     paths:
       - _deps/
       - _build/
+      #- "${INSTALL_DIR}"


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