Skip to content

Commit

Permalink
Workflows: Add CI to build Linux binaries
Browse files Browse the repository at this point in the history
This adds CI to build ROTA from source using Godot Engine, then upload the build as an artifact. Eventually this could be expanded to build a Flatpak, and is a prerequisite to getting it onto Flathub.

I intended to use the [godot-ci GitHub Action](https://github.com/marketplace/actions/godot-ci) for CI, but it doesn't currently support Godot 3.6 (see: abarichello/godot-ci#155). So for now, I'm using [docker.io/smks/godot-ci](https://hub.docker.com/r/smks/godot-ci) which is a container image forked from the former and just updated for 3.6.
  • Loading branch information
cassidyjames committed Dec 3, 2024
1 parent 6c7dafe commit 3bf8bfd
Showing 1 changed file with 48 additions and 0 deletions.
48 changes: 48 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: "Build"
on:
workflow_dispatch:
pull_request:
release:
types:
- published

# Cancel any ongoing previous run if the job is re-triggered
concurrency:
group: ${{ github.workflow }}
cancel-in-progress: true

permissions:
contents: read
pages: write
id-token: write

env:
GODOT_VERSION: 3.6

jobs:
linux:
name: Linux/X11
runs-on: ubuntu-latest
container:
image: docker.io/smks/godot-ci:3.6
steps:
- name: Checkout
uses: actions/checkout@v4
with:
lfs: true

- name: Set up export templates
run: |
mkdir -v -p ~/.local/share/godot/templates/
mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable
- name: Build
run: |
mkdir --verbose --parents ./export/linux
godot --no-window --path=./project.godot --export "Linux/X11" ./export/linux/ROTA.x86_64
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
name: Linux
path: export/linux

0 comments on commit 3bf8bfd

Please sign in to comment.