Skip to content

Added the workflow

Added the workflow #1

Workflow file for this run

name: "godot-ci export"
on:
push:
branches:
- main-(godot-4)
workflow_dispatch:
inputs:
create_release:
description: 'Deploy a new release to Itch'
default: 'true'
env:
GODOT_VERSION: 4.4.1
EXPORT_NAME: ${{vars.EXPORT_NAME}}
PROJECT_PATH: .
jobs:
export-windows:
name: Windows Export
runs-on: ubuntu-22.04
container:
image: barichello/godot-ci:4.4.1
steps:
- name: Checkout
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: Windows Build
run: |
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.zip"
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: windows
path: build/windows
- name: Butler Upload
uses: yeslayla/butler-publish-itchio-action@master
env:
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_API_KEY }}
CHANNEL: windows
ITCH_GAME: ${{vars.ITCH_GAME}}
ITCH_USER: ${{vars.ITCH_USER}}
PACKAGE: build/windows
export-web:
name: Web Export
runs-on: ubuntu-22.04
container:
image: barichello/godot-ci:4.4.1
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@v4
with:
name: web
path: build/web
- name: Butler Upload
uses: yeslayla/butler-publish-itchio-action@master
env:
BUTLER_CREDENTIALS: ${{ secrets.BUTLER_API_KEY }}
CHANNEL: web
ITCH_GAME: ${{vars.ITCH_GAME}}
ITCH_USER: ${{vars.ITCH_USER}}
PACKAGE: build/web