diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 284eae6..1a72e3c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,8 @@ image: $CI_REGISTRY/open-fpsz/docker-godot/godot +variables: + EXPORT_NAME: open-fpsz + stages: - addons - export @@ -23,45 +26,35 @@ addons: .export_presets: before_script: - cp "$EXPORT_PRESETS" export_presets.cfg - only: - - main - -variables: - EXPORT_NAME: open-fpsz + - export ZIP_ARCHIVE_NAME="$EXPORT_NAME-$CI_COMMIT_TAG-$CI_JOB_NAME.zip" + rules: + - if: '$CI_COMMIT_TAG =~ /^v\d\.\d\.\d$/' linux: stage: export extends: [ .export_presets ] when: manual script: - - mkdir -v -p build/linux - - godot --headless --verbose --export-release "Linux/X11" build/linux/$EXPORT_NAME.x86_64 - artifacts: - name: $EXPORT_NAME-$CI_JOB_NAME - paths: - - build/linux + - mkdir -vp build/$CI_JOB_NAME + - godot --headless --verbose --export-release "Linux/X11" build/$CI_JOB_NAME/$EXPORT_NAME.x86_64 + - cd build && zip -r $ZIP_ARCHIVE_NAME $CI_JOB_NAME/* + - 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file $ZIP_ARCHIVE_NAME "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/$EXPORT_NAME/${CI_COMMIT_TAG:1}/$ZIP_ARCHIVE_NAME"' windows: stage: export extends: [ .export_presets ] when: manual script: - - mkdir -v -p build/windows - - godot --headless --verbose --export-release "Windows Desktop" build/windows/$EXPORT_NAME.exe - artifacts: - name: $EXPORT_NAME-$CI_JOB_NAME - paths: - - build/windows + - mkdir -vp build/$CI_JOB_NAME + - godot --headless --verbose --export-release "Windows Desktop" build/$CI_JOB_NAME/$EXPORT_NAME.exe + - cd build && zip -r $ZIP_ARCHIVE_NAME $CI_JOB_NAME/* + - 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file $ZIP_ARCHIVE_NAME "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/$EXPORT_NAME/${CI_COMMIT_TAG:1}/$ZIP_ARCHIVE_NAME"' mac: stage: export extends: [ .export_presets ] when: manual script: - - mkdir -v -p build/mac - - godot --headless --verbose --export-release "Mac OSX" build/mac/$EXPORT_NAME.zip - artifacts: - name: $EXPORT_NAME-$CI_JOB_NAME - paths: - - build/mac - + - mkdir -vp build/$CI_JOB_NAME + - godot --headless --verbose --export-release "macOS" build/mac/$ZIP_ARCHIVE_NAME + - 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file $ZIP_ARCHIVE_NAME "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/$EXPORT_NAME/${CI_COMMIT_TAG:1}/$ZIP_ARCHIVE_NAME"'