name: Release Godot Configurator on: push: branches: [ feat/godot-configurator ] pull_request: branches: [ feat/godot-configurator ] env: GODOT_VERSION: 4.2.2 EXPORT_NAME: RetroDECK-Configurator #match tag in project settings of Godot TAG: RetroDECK-Configurator-v0.5 jobs: export-linux: name: Linux Export 🐧 runs-on: ubuntu-latest defaults: run: shell: bash working-directory: tools/configurator container: image: docker://barichello/godot-ci:4.2.2 steps: - name: Checkout 🛎️ uses: actions/checkout@v4 with: submodules: true - name: Setup 💻 run: | mkdir -v -p build/${EXPORT_NAME}-Linux-64bit ~/.local/share/godot/export_templates mv /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable - name: Import resources once 📦 continue-on-error: true run: godot --headless -v --import - name: Linux Build 🔧 continue-on-error: true # --export-release has to match the export template in Godot project run: | godot --headless -v --export-release "Linux/X11 64-bit" ~/$EXPORT_NAME.pck - name: Give execute permission ☑️ run: | chmod +x ~/$EXPORT_NAME.pck - name: Create tar.gz archive 🗜️ run: | tar zcvf ~/${EXPORT_NAME}.tar.gz ~/$EXPORT_NAME.pck # Create artifacts in action. Optional item - name: Upload Linux x86_64 Artifact 🚀 uses: actions/upload-artifact@v4 with: name: ${{env.EXPORT_NAME}} path: ~/${{env.EXPORT_NAME}}.tar.gz retention-days: 14 # Upload release linked to tag # had to explicitly call folder reference - name: Upload Release Asset 🚀 uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: /github/home/RetroDECK-* tag: ${{env.TAG}} overwrite: true file_glob: true