gitlab-ci, build/windows: Do not build unneeded dist assets on CI

There is no need to generate Installer assets on Store (and vice versa) or
on build-only pipelines. Let's build only the necessary, mitigating #11385
This commit is contained in:
Bruno 2024-09-28 08:04:45 -03:00
parent 1889f554d7
commit dffefa1b67
No known key found for this signature in database
2 changed files with 27 additions and 8 deletions

View file

@ -424,9 +424,29 @@ gimp-win-x64-cross:
.win:
extends: .default
rules:
- if: '$CI_MERGE_REQUEST_LABELS =~ /.*5. Windows Installer.*/ && $CI_MERGE_REQUEST_LABELS =~ /.*5. Microsoft Store.*/'
interruptible: true
variables:
INSTALLER_OPTION: '-Dwindows-installer=true'
STORE_OPTION: '-Dms-store=true'
- if: '$CI_MERGE_REQUEST_LABELS =~ /.*5. Windows Installer.*/'
interruptible: true
variables:
INSTALLER_OPTION: '-Dwindows-installer=true'
- if: '$CI_MERGE_REQUEST_LABELS =~ /.*5. Microsoft Store.*/ && $CI_JOB_NAME =~ /.*64.*/'
interruptible: true
variables:
STORE_OPTION: '-Dms-store=true'
- if: '$GIMP_CI_WIN_INSTALLER != null && $GIMP_CI_MS_STORE != null'
variables:
INSTALLER_OPTION: '-Dwindows-installer=true'
STORE_OPTION: '-Dms-store=true'
- if: '$GIMP_CI_WIN_INSTALLER != null'
variables:
INSTALLER_OPTION: '-Dwindows-installer=true'
- if: '$GIMP_CI_MS_STORE != null && $CI_JOB_NAME =~ /.*64.*/'
variables:
STORE_OPTION: '-Dms-store=true'
- <<: *CI_RELEASE
variables:
CHERE_INVOKING: "yes"
@ -438,9 +458,6 @@ gimp-win-x64-cross:
extends: .win
rules:
- !reference [.win, rules]
- if: '$CI_MERGE_REQUEST_LABELS =~ /.*5. Microsoft Store.*/'
interruptible: true
- if: '$GIMP_CI_MS_STORE != null'
- if: '$GIMP_CI_MSYS2_WIN_AARCH64 != null'
tags:
- windows-aarch64
@ -495,9 +512,6 @@ gimp-win-a64:
extends: .win
rules:
- !reference [.win, rules]
- if: '$CI_MERGE_REQUEST_LABELS =~ /.*5. Microsoft Store.*/'
interruptible: true
- if: '$GIMP_CI_MS_STORE != null'
- if: '$GIMP_CI_MSYS2_WIN64 != null'
tags:
- win32-ps

View file

@ -44,11 +44,16 @@ done
# Build GIMP
if [ -z "$GITLAB_CI" ] && [ "$1" != "--relocatable" ]; then
echo "(INFO): GIMP will be built in MSYS2 friendly mode"
export MESON_OPTIONS='-Drelocatable-bundle=no -Dwindows-installer=false -Dms-store=false'
export bundle_option='-Drelocatable-bundle=no'
elif [ "$GITLAB_CI" ] || [ "$1" = '--relocatable' ]; then
echo "(INFO): GIMP will be built as a relocatable bundle"
export MESON_OPTIONS='-Drelocatable-bundle=yes -Dwindows-installer=true -Dms-store=true'
export bundle_option='-Drelocatable-bundle=yes'
fi
if [ -z "$GITLAB_CI" ] && [ "$1" = '--relocatable' ]; then
export INSTALLER_OPTION='-Dwindows-installer=true'
export STORE_OPTION='-Dms-store=true'
fi
export MESON_OPTIONS="$bundle_option $INSTALLER_OPTION $STORE_OPTION"
if [ ! -f "_build/build.ninja" ]; then
mkdir -p "_build" && cd "_build"