name: Deploy Patch on: workflow_dispatch: inputs: version: description: 'Patch version (e.g., 2.4.2)' required: true type: string notes: description: 'Release notes' required: false type: string jobs: build-patch: name: Build Patch runs-on: ubuntu-latest timeout-minutes: 45 steps: - name: Checkout repository uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Godot uses: firebelley/godot-action@v3 with: godot-version: '4.6' engine-type: standard - name: Install export templates run: | mkdir -v -p ~/.local/share/godot/export_templates/4.6.stable wget -q https://github.com/godotengine/godot-builds/releases/download/4.6-stable/Godot_v4.6-stable_export_templates.tpz unzip -q Godot_v4.6-stable_export_templates.tpz -d ~/.local/share/godot/export_templates/4.6.stable - name: Run patch build script run: | python3 patch_version.py ${{ github.event.inputs.version }} "${{ github.event.inputs.notes }}" - name: Export Windows patch run: | godot --headless --export-release "Windows Desktop" build/tekton_armageddon_patch_windows.exe - name: Export Linux patch run: | godot --headless --export-release "Linux/X11" build/tekton_armageddon_patch_linux.x86_64 - name: Upload patch artifacts uses: actions/upload-artifact@v4 with: name: tekton-patch-${{ github.event.inputs.version }} path: | build/tekton_armageddon_patch_windows.exe build/tekton_armageddon_patch_linux.x86_64 retention-days: 30 deploy-patch: name: Deploy Patch runs-on: ubuntu-latest timeout-minutes: 15 needs: build-patch permissions: contents: write steps: - name: Download patch artifacts uses: actions/download-artifact@v4 with: name: tekton-patch-${{ github.event.inputs.version }} path: artifacts/patch - name: Create patch release uses: softprops/action-gh-release@v2 with: tag_name: patch-${{ github.event.inputs.version }} name: "Patch ${{ github.event.inputs.version }}" body: | ${{ github.event.inputs.notes }} files: | artifacts/patch/tekton_armageddon_patch_windows.exe artifacts/patch/tekton_armageddon_patch_linux.x86_64 prerelease: true