diff --git a/.github/workflows/godot-ci.yml b/.github/workflows/godot-ci.yml
deleted file mode 100644
index 24d40fd..0000000
--- a/.github/workflows/godot-ci.yml
+++ /dev/null
@@ -1,126 +0,0 @@
-name: "Export"
-on: push
-
-env:
- GODOT_VERSION: 4.1.2
- EXPORT_NAME: Frontier-of-Hell
- PROJECT_PATH: Frontier-of-Hell
-
-jobs:
- export-windows:
- name: Windows Export
- runs-on: ubuntu-20.04
- container:
- image: barichello/godot-ci:4.1.2
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- with:
- lfs: true
- - name: Setup
- run: |
- mkdir -p /github/home/.config/godot
- cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
- mkdir -v -p ~/.local/share/godot/templates
- mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable
- - name: Windows Build
- run: |
- mkdir -v -p build/windows
- godot -v --export "Windows Desktop" ../build/windows/$EXPORT_NAME.exe
- - name: Upload Artifact
- uses: actions/upload-artifact@v1
- with:
- name: windows
- path: build/windows
-
- export-linux:
- name: Linux Export
- runs-on: ubuntu-20.04
- container:
- image: barichello/godot-ci:4.1.2
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- with:
- lfs: true
- - name: Setup
- run: |
- mkdir -p /github/home/.config/godot
- cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
- mkdir -v -p ~/.local/share/godot/templates
- mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable
- - name: Linux Build
- run: |
- mkdir -v -p build/linux
- godot -v --export "Linux/X11" ../build/linux/$EXPORT_NAME.x86_64
- - name: Upload Artifact
- uses: actions/upload-artifact@v1
- with:
- name: linux
- path: build/linux
-
- export-web:
- name: Web Export
- runs-on: ubuntu-20.04
- container:
- image: barichello/godot-ci:4.1.2
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- with:
- lfs: true
- - name: Setup
- run: |
- mkdir -p /github/home/.config/godot
- cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
- mkdir -v -p ~/.local/share/godot/templates
- mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable
- - name: Web Build
- run: |
- mkdir -v -p build/web
- godot -v --export "HTML5" ../build/web/index.html
- - name: Patch for Cross Origin Isolation and SharedArrayBuffer
- run: |
- cd build/web/
- curl https://raw.githubusercontent.com/josephrocca/clip-image-sorter/92b108dc670d0b56bd6b72963b0e86c4c862412e/enable-threads.js --output enable-threads.js
- sed -i 's|headers.set("Cross-Origin-Embedder-Policy", "credentialless")|headers.set("Cross-Origin-Embedder-Policy", "require-corp")|g' enable-threads.js
- sed -i 's|||g' index.html
- - name: Upload Artifact
- uses: actions/upload-artifact@v1
- with:
- name: web
- path: build/web
- - name: Install rsync 📚
- run: |
- apt-get update && apt-get install -y rsync
- - name: Deploy to GitHub Pages 🚀
- uses: JamesIves/github-pages-deploy-action@releases/v4
- with:
- branch: gh-pages # The branch the action should deploy to.
- folder: build/web # The folder the action should deploy.
-
- export-mac:
- name: Mac Export
- runs-on: ubuntu-20.04
- container:
- image: barichello/godot-ci:4.1.2
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- with:
- lfs: true
- - name: Setup
- run: |
- mkdir -p /github/home/.config/godot
- cp /root/.config/godot/editor_settings-4.tres /github/home/.config/godot/
- mkdir -v -p ~/.local/share/godot/templates
- mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable
- - name: Mac Build
- run: |
- mkdir -v -p build/mac
- godot -v --export "Mac OSX" ../build/mac/$EXPORT_NAME.zip
- - name: Upload Artifact
- uses: actions/upload-artifact@v1
- with:
- name: mac
- path: build/mac
\ No newline at end of file
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..02a04fe
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,71 @@
+image: barichello/godot-ci:4.1.2
+
+# Cache imported assets between runs
+cache:
+ key: import-assets
+ paths:
+ - .godot/imported/
+
+stages:
+ - import-assets
+ - export
+ - deploy
+
+variables:
+ EXPORT_NAME: Frontier-of-Hell
+
+# Open the editor to import assets in case the cache was empty or outdated
+import-assets:
+ stage: import-assets
+ script:
+ - godot -v -e --quit --headless
+
+linux:
+ stage: export
+ script:
+ - mkdir -v -p build/linux
+ - godot -v --export-release --headless "Linux/X11" ../build/linux/$EXPORT_NAME.x86_64
+ artifacts:
+ name: $EXPORT_NAME-$CI_JOB_NAME
+ paths:
+ - build/linux
+
+windows:
+ stage: export
+ script:
+ - mkdir -v -p build/windows
+ - godot -v --export-release --headless "Windows Desktop" ../build/windows/$EXPORT_NAME.exe
+ artifacts:
+ name: $EXPORT_NAME-$CI_JOB_NAME
+ paths:
+ - build/windows
+
+mac:
+ stage: export
+ script:
+ - mkdir -v -p build/mac
+ - godot -v --export-release --headless "Mac OSX" ../build/mac/$EXPORT_NAME.zip
+ artifacts:
+ name: $EXPORT_NAME-$CI_JOB_NAME
+ paths:
+ - build/mac
+
+web:
+ stage: export
+ script:
+ - mkdir -v -p build/web
+ - godot -v --export-release --headless "HTML5" ../build/web/index.html
+ artifacts:
+ name: $EXPORT_NAME-$CI_JOB_NAME
+ paths:
+ - build/web
+
+android:
+ stage: export
+ script:
+ - mkdir -v -p build/android
+ - godot -v --export-debug --headless "Android Debug" ../build/android/$EXPORT_NAME-debug.apk
+ artifacts:
+ name: $EXPORT_NAME-$CI_JOB_NAME
+ paths:
+ - build/android
\ No newline at end of file