Skip to content

bend-n/godot-actions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 

Repository files navigation

godot-actions

license version Buy me a coffee

Github Actions composite action repository.

How to use

Snippet
build-windows:
  runs-on: ubuntu-latest
  container:
    image: ghcr.io/bend-n/godot-2d:3.5
  name: Build windows
  steps:
    - name: Build
      uses: bend-n/godot-actions/.github/actions/export-windows@main
      env:
        NAME: ${{ github.event.repository.name }}
Full example

Note This is a copy of godot-template/.github/workflows/export.yml

name: "export" # name of the workflow
on: # when it is triggered
  workflow_dispatch: # manually or
  push: # on a push
    branches:
      - main # to this branch
    paths: # with modifications to these files
      - "**.gd" # all gdscript files
      - "**.tscn" # scene files
      - "**.import" # this means a png changed
      - "**.tres" # godot resources
      - "**.ttf" # fonts in godot3 dont have their own .import
      - ".github/workflows/export.yml" # this workflow
      - "export_presets.cfg" # the export template

jobs: # the things to do
  export: # a thing to do
    uses: bend-n/godot-actions/.github/workflows/callable-export.yml@main
    with: # variables
      image: ghcr.io/bend-n/godot-2d:3.5 # the container to use
      export-name: ${{ github.event.repository.name }} # the name of the exec. ($export-name.exe)
      platforms: "windows linux web android mac" # space seperated list of platforms to build
      project-root-path: "." # the directory that project.godot is in
      github-pages: "true" # to deploy to github pages or not (anything besides 'true' == false)
      itch-path: "${{ github.repository_owner }}/${{ github.event.repository.name }}" # required for itch.io deployment.
    secrets: # secrets
      butler-api-key: ${{ secrets.BUTLER_CREDENTIALS }} # required for itch.io deployment
      android-keystore-base64: ${{ secrets.ANDROID_KEYSTORE_BASE64 }} # for signing the apk, not required
      android-keystore-password: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} # ditto

Configuration

Note If script is not compiled, it must contain a shebang

Create a file ./.github/post_export that will be run after installation. The executable will be run with a argument, containing the platform. (eg: ./.github/post_export linux)

Bash example:

#!/bin/bash
[[ $1 == "web" ]] && wget -nv "example.org" -O build/web/example.html

A pre_export file is also supported.

About

tools for exporting godot projects via Github Actions

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published