diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index c666984..e9eda02 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -6,54 +6,125 @@ on: pull_request: branches: [release] +env: + GODOT_VERSION: 4.3 + EXPORT_NAME: test-project + PROJECT_PATH: test-project + jobs: - export: - name: Export (${{ matrix.platform }}) - runs-on: ubuntu-24.04 + export-windows: + name: Windows Export + runs-on: ubuntu-24.04 # Use 24.04 with godot 4 container: image: barichello/godot-ci:4.3 - - strategy: - matrix: - include: - - platform: windows - export_name: "Windows" - output: "windows/Experements.exe" - - # - platform: linux - # export_name: "Linux/X11" - # output: "linux/Experements.x86_64" - - # - platform: web - # export_name: "Web" - # output: "web/index.html" - - # - platform: mac - # export_name: "macOS" - # output: "mac/Experements.zip" - steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v4 with: lfs: true - - name: Setup run: | mkdir -v -p ~/.local/share/godot/export_templates/ mkdir -v -p ~/.config/ mv /root/.config/godot ~/.config/godot mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable - - - name: Build + - name: Windows Build run: | - mkdir -v -p build/${{ matrix.platform }} + mkdir -v -p build/windows EXPORT_DIR="$(readlink -f build)" cd $PROJECT_PATH + godot --headless --verbose --export-release "Windows Desktop" "$EXPORT_DIR/windows/$EXPORT_NAME.exe" + - name: Upload Artifact + uses: actions/upload-artifact@v5 + with: + name: windows + path: build/windows - godot --headless --verbose --export-release \ - "${{ matrix.export_name }}" \ - "$EXPORT_DIR/${{ matrix.output }}" + export-linux: + name: Linux Export + runs-on: ubuntu-24.04 # Use 24.04 with godot 4 + container: + image: barichello/godot-ci:4.3 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + lfs: true + - name: Setup + run: | + mkdir -v -p ~/.local/share/godot/export_templates/ + mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable + - name: Linux Build + run: | + mkdir -v -p build/linux + EXPORT_DIR="$(readlink -f build)" + cd $PROJECT_PATH + godot --headless --verbose --export-release "Linux/X11" "$EXPORT_DIR/linux/$EXPORT_NAME.x86_64" + - name: Upload Artifact + uses: actions/upload-artifact@v5 + with: + name: linux + path: build/linux + + # export-web: + # name: Web Export + # runs-on: ubuntu-24.04 # Use 24.04 with godot 4 + # container: + # image: barichello/godot-ci:4.3 + # steps: + # - name: Checkout + # uses: actions/checkout@v4 + # with: + # lfs: true + # - name: Setup + # run: | + # mkdir -v -p ~/.local/share/godot/export_templates/ + # mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable + # - name: Web Build + # run: | + # mkdir -v -p build/web + # EXPORT_DIR="$(readlink -f build)" + # cd $PROJECT_PATH + # godot --headless --verbose --export-release "Web" "$EXPORT_DIR/web/index.html" + # - name: Upload Artifact + # uses: actions/upload-artifact@v5 + # 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-24.04 # Use 24.04 with godot 4 + container: + image: barichello/godot-ci:4.3 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + lfs: true + - name: Setup + run: | + mkdir -v -p ~/.local/share/godot/export_templates/ + mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable + - name: Mac Build + run: | + mkdir -v -p build/mac + EXPORT_DIR="$(readlink -f build)" + cd $PROJECT_PATH + godot --headless --verbose --export-release "macOS" "$EXPORT_DIR/mac/$EXPORT_NAME.zip" + - name: Upload Artifact + uses: actions/upload-artifact@v5 + with: + name: mac + path: build/mac - name: Upload builds uses: actions/upload-artifact@v5