From 037d0af456f74fa7a111cf92028449807975fd0a Mon Sep 17 00:00:00 2001 From: Arctis_Fireblight <6182060+Arctis-Fireblight@users.noreply.github.com> Date: Wed, 19 Nov 2025 07:35:19 -0600 Subject: [PATCH 1/7] Fix: ensure version.txt is included in release templates, issue #1110 --- .gitlab-ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index aa5ccf29b3..df05dcf457 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1368,9 +1368,13 @@ package-builds: - mv out/macos/universal/tools/signed/redot.macos.editor.universal_stapled.zip releases/Redot_v${VERSIONSTRING}_macos_universal.zip - mv out/macos/universal/tools-mono/signed/redot.macos.editor.universal.mono_stapled.zip releases/Redot_v${VERSIONSTRING}_macos_mono_universal.zip - pushd out/templates-mono/ + - touch version.txt + - echo "${VERSIONSTRING}" | cat >> version.txt - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_mono_export_templates.zip ./* - popd - pushd out/templates/ + - touch version.txt + - echo "${VERSIONSTRING}-mono" | cat >> version.txt - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_export_templates.zip ./* - popd - mv releases/Redot_v${VERSIONSTRING}_mono_export_templates.zip releases/Redot_v${VERSIONSTRING}_mono_export_templates.tpz From 3e573e515ef4b71b6c003dd6f16bba96f45192b4 Mon Sep 17 00:00:00 2001 From: Arctis_Fireblight <6182060+Arctis-Fireblight@users.noreply.github.com> Date: Wed, 19 Nov 2025 11:51:23 -0600 Subject: [PATCH 2/7] Fix: ensure paths are correct for export templates, issue #1116 --- .gitlab-ci.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index df05dcf457..0230fe170a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1367,15 +1367,16 @@ package-builds: - popd - mv out/macos/universal/tools/signed/redot.macos.editor.universal_stapled.zip releases/Redot_v${VERSIONSTRING}_macos_universal.zip - mv out/macos/universal/tools-mono/signed/redot.macos.editor.universal.mono_stapled.zip releases/Redot_v${VERSIONSTRING}_macos_mono_universal.zip - - pushd out/templates-mono/ - - touch version.txt - - echo "${VERSIONSTRING}" | cat >> version.txt - - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_mono_export_templates.zip ./* - popd - - pushd out/templates/ - - touch version.txt - - echo "${VERSIONSTRING}-mono" | cat >> version.txt - - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_export_templates.zip ./* + - pushd out/ + - touch ./templates/version.txt + - echo "${VERSIONSTRING}-mono" | cat >> ./templates/version.txt + - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_export_templates.zip ./templates/* + - rm -rf ./templates/ + - mv ./templates-mono ./templates/ + - touch ./templates/version.txt + - echo "${VERSIONSTRING}" | cat >> ./templates/version.txt + - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_mono_export_templates.zip ./templates/* - popd - mv releases/Redot_v${VERSIONSTRING}_mono_export_templates.zip releases/Redot_v${VERSIONSTRING}_mono_export_templates.tpz - mv releases/Redot_v${VERSIONSTRING}_export_templates.zip releases/Redot_v${VERSIONSTRING}_export_templates.tpz From 693599d2291e9ee03f76c69c683b1f8d379c7c39 Mon Sep 17 00:00:00 2001 From: Arctis_Fireblight <6182060+Arctis-Fireblight@users.noreply.github.com> Date: Wed, 19 Nov 2025 11:55:06 -0600 Subject: [PATCH 3/7] Fix: removed duplicate mac release templates, issue #1112 --- .gitlab-ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0230fe170a..427d572f38 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1371,11 +1371,13 @@ package-builds: - pushd out/ - touch ./templates/version.txt - echo "${VERSIONSTRING}-mono" | cat >> ./templates/version.txt + - rm ./templates/redot.macos.template* - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_export_templates.zip ./templates/* - rm -rf ./templates/ - mv ./templates-mono ./templates/ - touch ./templates/version.txt - echo "${VERSIONSTRING}" | cat >> ./templates/version.txt + - rm ./templates/redot.macos.template* - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_mono_export_templates.zip ./templates/* - popd - mv releases/Redot_v${VERSIONSTRING}_mono_export_templates.zip releases/Redot_v${VERSIONSTRING}_mono_export_templates.tpz From f1ce693c4c076a65e1f9c66a12b3d9cd517240be Mon Sep 17 00:00:00 2001 From: Arctis_Fireblight <6182060+Arctis-Fireblight@users.noreply.github.com> Date: Wed, 19 Nov 2025 12:49:23 -0600 Subject: [PATCH 4/7] Fix: ensured correct file names for export templates, issue #1111 --- .gitlab-ci.yml | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 427d572f38..d7df24ac48 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -91,6 +91,9 @@ stages: - if: $DO_RELEASE == "true" script: - !reference [.build-release-template, script] + after_script: + - if [ "$TARGET" == "template_debug" ]; then export FRIENDLY_TARGET="debug"; else export FRIENDLY_TARGET="release"; fi + - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}" "out/templates/linux_${FRIENDLY_TARGET}.${ARCH}" artifacts: public: false expire_in: 3 days @@ -104,6 +107,9 @@ stages: - if: $DO_RELEASE == "true" script: - !reference [.build-release-template-mono, script] + after_script: + - if [ "$TARGET" == "template_debug" ]; then export FRIENDLY_TARGET="debug"; else export FRIENDLY_TARGET="release"; fi + - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.mono" "out/templates/linux_${FRIENDLY_TARGET}.${ARCH}" artifacts: public: false expire_in: 3 days @@ -142,6 +148,16 @@ stages: - export OPTIONS="production=yes use_mingw=yes angle_libs=$(pwd)/deps/angle mesa_libs=$(pwd)/deps/mesa" script: - !reference [ .build-release-template, script ] + after_script: + - if [ "$TARGET" == "template_debug" ]; then export FRIENDLY_TARGET="debug"; else export FRIENDLY_TARGET="release"; fi + - | + if [ "$ARCH" == "arm64" ]; then + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.console.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.console.exe" + else + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.console.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.console.exe" + fi variables: PLATFORM: "windows" artifacts: @@ -160,6 +176,16 @@ stages: - export OPTIONS="production=yes use_mingw=yes angle_libs=$(pwd)/deps/angle mesa_libs=$(pwd)/deps/mesa" script: - !reference [ .build-release-template-mono, script ] + after_script: + - if [ "$TARGET" == "template_debug" ]; then export FRIENDLY_TARGET="debug"; else export FRIENDLY_TARGET="release"; fi + - | + if [ "$ARCH" == "arm64" ]; then + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.mono.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.mono.console.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.console.exe" + else + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.mono.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.mono.console.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.console.exe" + fi variables: PLATFORM: "windows" artifacts: @@ -905,6 +931,14 @@ Web-Release-Template: script: - export BUILD_NAME="official" - /root/scripts/buildWeb.sh + - mv "out/templates/godot.web.template_debug.wasm32.zip" "out/templates/web_debug.zip" + - mv "out/templates/godot.web.template_release.wasm32.zip" "out/templates/web_release.zip" + - mv "out/templates/godot.web.template_debug.wasm32.dlink.zip" "out/templates/web_dlink_debug.zip" + - mv "out/templates/godot.web.template_release.wasm32.dlink.zip" "out/templates/web_dlink_release.zip" + - mv "out/templates/godot.web.template_debug.wasm32.nothreads.zip" "out/templates/web_nothreads_debug.zip" + - mv "out/templates/godot.web.template_release.wasm32.nothreads.zip" "out/templates/web_nothreads_release.zip" + - mv "out/templates/godot.web.template_debug.wasm32.nothreads.dlink.zip" "out/templates/web_dlink_nothreads_debug.zip" + - mv "out/templates/godot.web.template_release.wasm32.nothreads.dlink.zip" "out/templates/web_dlink_nothreads_release.zip" artifacts: public: false expire_in: 3 days @@ -1297,7 +1331,7 @@ sign-mac-templates: codesign --force -s - \ --options=linker-signed \ -v macos_template.app/Contents/MacOS/* - zip -r ../out/templates${_mono_prefix}/macos_signed.zip macos_template.app + zip -r ../out/templates${_mono_prefix}/macos.zip macos_template.app popd rm -rf tmp/ } From 155f5edaa3c191beb4f2e973999e65a10a4696c3 Mon Sep 17 00:00:00 2001 From: Arctis_Fireblight <6182060+Arctis-Fireblight@users.noreply.github.com> Date: Wed, 19 Nov 2025 13:24:18 -0600 Subject: [PATCH 5/7] Fix: Ensure tarball is created by the new build system, issue #1113 --- .gitlab-ci.yml | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d7df24ac48..310d6600f2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -340,6 +340,26 @@ stages: - out/$PLATFORM/$ARCH/$TYPE-mono - mono-glue/ +# create tarball for release +create-tarball: + tags: [ docker ] + image: $CI_REGISTRY/redot-engine/redot-production-containers/redot-linux:latest + rules: + - when: always + script: + - TARBALL_NAME="redot-${VERSION_STRING}.tar.xz" + - FOLDER_NAME="redot-${VERSION_STRING}" + - mkdir $FOLDER_NAME + - cp -a . ./$FOLDER_NAME/ + - rm -rf "${FOLDER_NAME}/${FOLDER_NAME}" + - mkdir -p out/ + - tar -cJf "out/${TARBALL_NAME}" "${FOLDER_NAME}" + - sha256sum "out/${TARBALL_NAME}" > "out/${TARBALL_NAME}.sha256" + artifacts: + public: false + expire_in: 3 days + paths: + - out/ # -- Build the Linux Editors -- linux-editor-x64-mono: tags: [ docker ] @@ -1356,7 +1376,10 @@ package-builds: image: $CI_REGISTRY/redot-engine/redot-production-containers/redot-linux:latest script: - mkdir releases/ - - export RELEASE_DIR="$(pwd)/releases" + - RELEASE_DIR="$(pwd)/releases" + - TARBALL_NAME="redot-${VERSION_STRING}.tar.xz" + - cp "out/${TARBALL_NAME}" "${RELEASE_DIR}/${TARBALL_NAME}" + - cp "out/${TARBALL_NAME}.sha256" "${RELEASE_DIR}/${TARBALL_NAME}.sha256" - pushd out/linuxbsd/x86_64/tools/ - zip -r "${RELEASE_DIR}/Redot_v${VERSIONSTRING}_linux_x64.zip" ./* - popd From 80f83a7cf2c587977ecd901f4f9a0c289721382c Mon Sep 17 00:00:00 2001 From: Arctis_Fireblight <6182060+Arctis-Fireblight@users.noreply.github.com> Date: Wed, 19 Nov 2025 13:25:02 -0600 Subject: [PATCH 6/7] Fix: Ensure SHA512-SUMS.txt is created by the new build system, issue #1114 --- .gitlab-ci.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 310d6600f2..e439434a07 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1439,6 +1439,16 @@ package-builds: - popd - mv releases/Redot_v${VERSIONSTRING}_mono_export_templates.zip releases/Redot_v${VERSIONSTRING}_mono_export_templates.tpz - mv releases/Redot_v${VERSIONSTRING}_export_templates.zip releases/Redot_v${VERSIONSTRING}_export_templates.tpz + - touch SHA512-SUMS.txt + - | + for f in releases/*; do + # Only process regular files + [ -f "$f" ] || continue + + # Compute the hash and append it + sha512sum "$f" >> SHA512-SUMS.txt + done + - mv SHA512-SUMS.txt releases/SHA512-SUMS.txt artifacts: expire_in: 3 days paths: From 4e9db2ca05e8ca004577eb62650107f58e1711b9 Mon Sep 17 00:00:00 2001 From: Arctis_Fireblight <6182060+Arctis-Fireblight@users.noreply.github.com> Date: Wed, 19 Nov 2025 19:50:20 -0600 Subject: [PATCH 7/7] Fix: Ensure IOS templates are packaged correctly, issue #1115 --- .gitlab-ci.yml | 143 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 122 insertions(+), 21 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e439434a07..d987620def 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -109,7 +109,7 @@ stages: - !reference [.build-release-template-mono, script] after_script: - if [ "$TARGET" == "template_debug" ]; then export FRIENDLY_TARGET="debug"; else export FRIENDLY_TARGET="release"; fi - - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.mono" "out/templates/linux_${FRIENDLY_TARGET}.${ARCH}" + - mv "out/templates-mono/redot.${PLATFORM}.${TARGET}.${ARCH}.mono" "out/templates-mono/linux_${FRIENDLY_TARGET}.${ARCH}" artifacts: public: false expire_in: 3 days @@ -152,11 +152,11 @@ stages: - if [ "$TARGET" == "template_debug" ]; then export FRIENDLY_TARGET="debug"; else export FRIENDLY_TARGET="release"; fi - | if [ "$ARCH" == "arm64" ]; then - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.exe" - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.console.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.console.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.exe" "out/templates/windows_${FRIENDLY_TARGET}_${ARCH}.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.console.exe" "out/templates/windows_${FRIENDLY_TARGET}_${ARCH}_console.exe" else - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.exe" - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.console.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.console.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.exe" "out/templates/windows_${FRIENDLY_TARGET}_${ARCH}.exe" + mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.console.exe" "out/templates/windows_${FRIENDLY_TARGET}_${ARCH}_console.exe" fi variables: PLATFORM: "windows" @@ -180,11 +180,11 @@ stages: - if [ "$TARGET" == "template_debug" ]; then export FRIENDLY_TARGET="debug"; else export FRIENDLY_TARGET="release"; fi - | if [ "$ARCH" == "arm64" ]; then - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.mono.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.exe" - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.mono.console.exe" "out/templates/windows_${FRIENDLY_TARGET}.${ARCH}.console.exe" + mv "out/templates-mono/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.mono.exe" "out/templates-mono/windows_${FRIENDLY_TARGET}_${ARCH}.exe" + mv "out/templates-mono/redot.${PLATFORM}.${TARGET}.${ARCH}.llvm.mono.console.exe" "out/templates-mono/windows_${FRIENDLY_TARGET}_${ARCH}_console.exe" else - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.mono.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.exe" - mv "out/templates/redot.${PLATFORM}.${TARGET}.${ARCH}.mono.console.exe" "out/templates/linux.${FRIENDLY_TARGET}.${ARCH}.console.exe" + mv "out/templates-mono/redot.${PLATFORM}.${TARGET}.${ARCH}.mono.exe" "out/templates-mono/windows_${FRIENDLY_TARGET}_${ARCH}.exe" + mv "out/templates-mono/redot.${PLATFORM}.${TARGET}.${ARCH}.mono.console.exe" "out/templates-mono/windows_${FRIENDLY_TARGET}_${ARCH}_console.exe" fi variables: PLATFORM: "windows" @@ -343,15 +343,43 @@ stages: # create tarball for release create-tarball: tags: [ docker ] + stage: build image: $CI_REGISTRY/redot-engine/redot-production-containers/redot-linux:latest rules: - when: always script: - - TARBALL_NAME="redot-${VERSION_STRING}.tar.xz" - - FOLDER_NAME="redot-${VERSION_STRING}" + - major=$(grep -E '^major\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - minor=$(grep -E '^minor\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - patch=$(grep -E '^patch\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - status=$(grep -E '^status\s*=' version.py | sed -E "s/.*=\s*\"([^\"]+)\".*/\1/") + - status_version=$(grep -E '^status_version\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - echo "$major.$minor.$patch-$status.$status_version" + - | + if [ "$status" == "stable" ] + then + if [ "$patch" == "0" ] + then + export VERSIONSTRING="${major}.${minor}-stable" + export VERSIONTXT="${major}.${minor}.stable" + else + export VERSIONSTRING="${major}.${minor}.${patch}-stable" + export VERSIONTXT="${major}.${minor}.${patch}.stable" + fi + else + if [ "$patch" == "0" ] + then + export VERSIONSTRING="${major}.${minor}-${status}.${status_version}" + export VERSIONTXT="${major}.${minor}.${status}.${status_version}" + else + export VERSIONSTRING="${major}.${minor}.${patch}-${status}.${status_version}" + export VERSIONTXT="${major}.${minor}.${patch}.${status}.${status_version}" + fi + fi + - echo $VERSIONSTRING + - TARBALL_NAME="redot-${VERSIONSTRING}.tar.xz" + - FOLDER_NAME="redot-${VERSIONSTRING}" - mkdir $FOLDER_NAME - - cp -a . ./$FOLDER_NAME/ - - rm -rf "${FOLDER_NAME}/${FOLDER_NAME}" + - rsync -a --exclude="${FOLDER_NAME}" ./ "${FOLDER_NAME}/" - mkdir -p out/ - tar -cJf "out/${TARBALL_NAME}" "${FOLDER_NAME}" - sha256sum "out/${TARBALL_NAME}" > "out/${TARBALL_NAME}.sha256" @@ -1037,7 +1065,8 @@ Android-Release-Template-Mono: - popd - ls bin/ - cp bin/*.zip out/templates-mono/ - - cp bin/*.apk out/templates-mono/ + - cp bin/android_monoDebug.apk out/templates-mono/android_debug.apk + - cp bin/android_monoRelease.apk out/templates-mono/android_release.apk - cp bin/*.aar out/templates-mono/ artifacts: public: false @@ -1117,6 +1146,51 @@ build-ios-Debug-Template-arm64-Mono: TYPE: "iPhoneOS" TARGET: "template_debug" +package-ios: + stage: build + tags: [docker] + image: $CI_REGISTRY/redot-engine/redot-production-containers/redot-linux:latest + needs: + - build-ios-Release-Template-arm64 + - build-ios-Release-Template-arm64-Mono + - build-ios-Release-Template-x64 + - build-ios-Release-Template-x64-Mono + - build-ios-Debug-Template-arm64 + - build-ios-Debug-Template-arm64-Mono + - build-ios-Debug-Template-x64 + - build-ios-Debug-Template-x64-Mono + rules: + - if: $DO_RELEASE == "true" + script: + - /root/scripts/Fetch_Deps.sh "ios" + - echo "Packaging IOS" + - cp -r misc/dist/ios_xcode ios_xcode + - cp out/templates/libgodot.ios.template_release.x86_64.simulator.a ios_xcode/libgodot.ios.release.xcframework/ios-arm64_x86_64-simulator/libgodot.a + - cp out/templates/libgodot.ios.template_debug.x86_64.simulator.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64_x86_64-simulator/libgodot.a + - cp out/templates/libgodot.ios.template_release.arm64.a ios_xcode/libgodot.ios.release.xcframework/ios-arm64/libgodot.a + - cp out/templates/libgodot.ios.template_debug.arm64.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64/libgodot.a + - cp -r deps/moltenvk/MoltenVK/MoltenVK.xcframework ios_xcode/ + - rm -rf ios_xcode/MoltenVK.xcframework/{macos,tvos}* + - cd ios_xcode + - zip -q -9 -r "../out/templates/ios.zip" * + - cd .. + - rm -rf ios_xcode + - echo "Done packaging IOS" + - echo "Packaging IOS Mono" + - cp -r misc/dist/ios_xcode ios_xcode + - cp out/templates-mono/libgodot.ios.template_release.x86_64.simulator.a ios_xcode/libgodot.ios.release.xcframework/ios-arm64_x86_64-simulator/libgodot.a + - cp out/templates-mono/libgodot.ios.template_debug.x86_64.simulator.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64_x86_64-simulator/libgodot.a + - cp out/templates-mono/libgodot.ios.template_release.arm64.a ios_xcode/libgodot.ios.release.xcframework/ios-arm64/libgodot.a + - cp out/templates-mono/libgodot.ios.template_debug.arm64.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64/libgodot.a + - cp -r deps/moltenvk/MoltenVK/MoltenVK.xcframework ios_xcode/ + - rm -rf ios_xcode/MoltenVK.xcframework/{macos,tvos}* + - cd ios_xcode + - zip -q -9 -r "../out/templates-mono/ios.zip" * + - cd .. + - rm -rf ios_xcode + artifacts: + expire_in: 3 days, + paths: [ out/templates/ios.zip, out/templates-mono/ios.zip ] sign-mac-editor: stage: build @@ -1149,12 +1223,12 @@ sign-mac-editor: _macos_tmpdir="$(pwd)/tmp" _app_path="${_macos_tmpdir}/${_appname}" echo $_macos_tmpdir - echo $__app_path + echo $_app_path cp -r "misc/dist/macos/editor.entitlements" "${_macos_tmpdir}/" rm -rf "${_macos_tmpdir}/${_appname}" cp -r "misc/dist/macos_tools.app" "${_macos_tmpdir}/${_appname}" if [[ "${_is_mono}" == "1" ]]; then - cp -r "${_reldir}/GodotSharp/ " "${_macos_tmpdir}/${_appname}/Contents/Resources/GodotSharp" + cp -r "${_reldir}/GodotSharp/" "${_macos_tmpdir}/${_appname}/Contents/Resources/GodotSharp" fi ls "${_reldir}/" ls "${_macos_tmpdir}/${_appname}/" @@ -1375,9 +1449,35 @@ package-builds: - docker image: $CI_REGISTRY/redot-engine/redot-production-containers/redot-linux:latest script: + - major=$(grep -E '^major\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - minor=$(grep -E '^minor\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - patch=$(grep -E '^patch\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - status=$(grep -E '^status\s*=' version.py | sed -E "s/.*=\s*\"([^\"]+)\".*/\1/") + - status_version=$(grep -E '^status_version\s*=' version.py | sed -E "s/.*=\s*([0-9]+).*/\1/") + - | + if [ "$status" == "stable" ] + then + if [ "$patch" == "0" ] + then + export VERSIONSTRING="${major}.${minor}-stable" + export VERSIONTXT="${major}.${minor}.stable" + else + export VERSIONSTRING="${major}.${minor}.${patch}-stable" + export VERSIONTXT="${major}.${minor}.${patch}.stable" + fi + else + if [ "$patch" == "0" ] + then + export VERSIONSTRING="${major}.${minor}-${status}.${status_version}" + export VERSIONTXT="${major}.${minor}.${status}.${status_version}" + else + export VERSIONSTRING="${major}.${minor}.${patch}-${status}.${status_version}" + export VERSIONTXT="${major}.${minor}.${patch}.${status}.${status_version}" + fi + fi - mkdir releases/ - RELEASE_DIR="$(pwd)/releases" - - TARBALL_NAME="redot-${VERSION_STRING}.tar.xz" + - TARBALL_NAME="redot-${VERSIONSTRING}.tar.xz" - cp "out/${TARBALL_NAME}" "${RELEASE_DIR}/${TARBALL_NAME}" - cp "out/${TARBALL_NAME}.sha256" "${RELEASE_DIR}/${TARBALL_NAME}.sha256" - pushd out/linuxbsd/x86_64/tools/ @@ -1424,17 +1524,18 @@ package-builds: - popd - mv out/macos/universal/tools/signed/redot.macos.editor.universal_stapled.zip releases/Redot_v${VERSIONSTRING}_macos_universal.zip - mv out/macos/universal/tools-mono/signed/redot.macos.editor.universal.mono_stapled.zip releases/Redot_v${VERSIONSTRING}_macos_mono_universal.zip - - popd - pushd out/ - touch ./templates/version.txt - - echo "${VERSIONSTRING}-mono" | cat >> ./templates/version.txt + - echo "${VERSIONTXT}" | cat >> ./templates/version.txt - rm ./templates/redot.macos.template* + - rm ./templates/libgodot.ios* - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_export_templates.zip ./templates/* - rm -rf ./templates/ - mv ./templates-mono ./templates/ - touch ./templates/version.txt - - echo "${VERSIONSTRING}" | cat >> ./templates/version.txt + - echo "${VERSIONTXT}.mono" | cat >> ./templates/version.txt - rm ./templates/redot.macos.template* + - rm ./templates/libgodot.ios* - zip -r ${RELEASE_DIR}/Redot_v${VERSIONSTRING}_mono_export_templates.zip ./templates/* - popd - mv releases/Redot_v${VERSIONSTRING}_mono_export_templates.zip releases/Redot_v${VERSIONSTRING}_mono_export_templates.tpz @@ -1448,7 +1549,7 @@ package-builds: # Compute the hash and append it sha512sum "$f" >> SHA512-SUMS.txt done - - mv SHA512-SUMS.txt releases/SHA512-SUMS.txt + - mv SHA512-SUMS.txt releases/SHA512-SUMS.txt artifacts: expire_in: 3 days paths: