Files
godot-ci/.gitlab-ci.yml
Hugo Locurcio 4b40190b44 Run git fetch before switching branches
This ensures the desired branch is available.

This closes #9.
2020-04-09 20:54:34 -03:00

106 lines
2.1 KiB
YAML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
image: barichello/godot-ci:3.2.1
stages:
- export
- deploy
variables:
EXPORT_NAME: game-off
before_script:
- mkdir -v -p build/linux
- mkdir -v -p build/windows
- mkdir -v -p build/mac
- mkdir -v -p build/web
linux:
stage: export
script:
- godot -v --export "Linux/X11" ./build/linux/$EXPORT_NAME.x86_64
artifacts:
name: $EXPORT_NAME-$CI_JOB_NAME
paths:
- build/linux
windows:
stage: export
script:
- godot -v --export "Windows Desktop" ./build/windows/$EXPORT_NAME.exe
artifacts:
name: $EXPORT_NAME-$CI_JOB_NAME
paths:
- build/windows
mac:
stage: export
script:
- godot -v --export "Mac OSX" ./build/mac/$EXPORT_NAME.zip
artifacts:
name: $EXPORT_NAME-$CI_JOB_NAME
paths:
- build/mac
web:
stage: export
script:
- godot -v --export "HTML5" ./build/web/index.html
artifacts:
name: $EXPORT_NAME-$CI_JOB_NAME
paths:
- build/web
# GitHub Pages Deploy
deploy-github-pages:
stage: deploy
dependencies:
- web
script:
# This ensures the `gh-pages` branch is available.
- git fetch
- git checkout gh-pages
- rm -f *.md
- mv build/web/** .
- git config user.email $GIT_EMAIL
- git config user.name $GIT_USERNAME
- git remote add github $REMOTE_URL
- git add -A
- 'git commit -m "ci: Deploy GitHub Page | $EXPORT_NAME:$CI_JOB_NAME" -m "Deploy from GitLab pipeline #$CI_PIPELINE_ID" || true'
- git push github gh-pages -f
# GitLab Pages Deploy
pages:
stage: deploy
dependencies:
- web
script:
# This ensures the `pages` branch is available.
- git fetch
- git checkout pages
- rm -f *.md
- mv build/web/** ./public
artifacts:
paths:
- public
# Itch.io Deploy
itchio:linux:
stage: deploy
script:
- butler push ./build/linux $ITCHIO_USERNAME/$ITCHIO_GAME:linux
dependencies:
- linux
itchio:windows:
stage: deploy
script:
- butler push ./build/windows $ITCHIO_USERNAME/$ITCHIO_GAME:windows
dependencies:
- windows
itchio:macosx:
stage: deploy
script:
- butler push ./build/mac $ITCHIO_USERNAME/$ITCHIO_GAME:mac
dependencies:
- mac