Skip to content

Build & Release

Build & Release #47

Workflow file for this run

name: Build and Publish
on:
push:
tags:
- "v*.*.*"
workflow_dispatch:
jobs:
export_game:
runs-on: ubuntu-latest
permissions:
contents: write
env:
ITCH_NAME: "kris-nikolov/stranded-shores"
name: Export And Upload
steps:
- name: checkout
uses: actions/checkout@v5
- name: Export
id: export
uses: firebelley/godot-export@v7.0.0
with:
godot_executable_download_url: https://downloads.godotengine.org/?version=4.5&flavor=stable&slug=linux.x86_64.zip&platform=linux.64
godot_export_templates_download_url: https://downloads.godotengine.org/?version=4.5&flavor=stable&slug=export_templates.tpz&platform=templates
relative_project_path: ./
archive_output: true
- name: Create Release
uses: ncipollo/release-action@v1.18.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
generateReleaseNotes: true
tag: ${{ github.ref_name }}
artifacts: ${{ steps.export.outputs.archive_directory }}/*
- name: Upload to Itch.io
env:
BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }}
run: |
set -euo pipefail
curl -L -o butler.zip https://broth.itch.zone/butler/linux-amd64/LATEST/archive/default
unzip butler.zip
chmod +x butler
./butler push "${{ steps.export.outputs.archive_directory }}/Windows.zip" ${ITCH_NAME}:windows --userversion ${{ github.ref_name }}
./butler push "${{ steps.export.outputs.archive_directory }}/Linux.zip" ${ITCH_NAME}:linux --userversion ${{ github.ref_name }}
./butler push "${{ steps.export.outputs.archive_directory }}/Web.zip" ${ITCH_NAME}:web --userversion ${{ github.ref_name }}