mirror of
https://gitlab.com/open-fpsz/open-fpsz.git
synced 2026-01-19 11:34:45 +00:00
61 lines
2 KiB
YAML
61 lines
2 KiB
YAML
image: $CI_REGISTRY/open-fpsz/docker-godot/godot
|
|
|
|
variables:
|
|
EXPORT_NAME: open-fpsz
|
|
|
|
stages:
|
|
- addons
|
|
- export
|
|
|
|
# cache imported assets between runs
|
|
cache: &global_cache
|
|
key: $CI_MERGE_REQUEST_IID
|
|
paths:
|
|
- .godot
|
|
|
|
# run godot to load addons
|
|
addons:
|
|
stage: addons
|
|
script:
|
|
- timeout 15 godot --headless --editor --verbose || true
|
|
- timeout 15 godot --headless --editor --verbose || true
|
|
rules:
|
|
- if: '$CI_COMMIT_TAG =~ /^v\d\.\d\.\d$/'
|
|
|
|
# export binaries
|
|
.export_presets:
|
|
before_script:
|
|
- cp "$EXPORT_PRESETS" export_presets.cfg
|
|
- 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 -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 -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 -vp build/$CI_JOB_NAME
|
|
- godot --headless --verbose --export-release "macOS" build/$CI_JOB_NAME/$ZIP_ARCHIVE_NAME
|
|
- 'cd build/$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"'
|