-
-
Notifications
You must be signed in to change notification settings - Fork 276
Description
Dialogic timeline won't run the exporting through CI/CD
Describe the bug
When trying to export a game to itch throught CI/CD (Github Actions), I got this error when the game tried to start a timeline: [Dialogic] There was an error loading this timeline. Check the filename, and the timeline for errors
When I exported on my desktop (Windows 11), the exported game worked correctly.
To Reproduce
Steps to reproduce the behavior:
- Create a godot game that calls a dialogic timeline
- Create an export preset (I tested with windows and web)
- Create an itch page for the game
- Setup a git repo in the game root dir
- Create a github repo for the game
- Push the git repo to github
- Get a butler (itch's CLI) API key
- Configure the butler API key as a repo secret
- Create a file
.github/workflows/itch-build-and-deploy.yml
in the repo root dir with the following content (replace the export template name with your own):
# This is a basic workflow to help you get started with Actions
name: Itch Build and Deploy
# Controls when the workflow will run
on:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
html:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
- name: Setup Godot
uses: solarlabyrinth/action-setup-godot@v2
with:
version: 4.4.1-stable
- name: Setup butler
uses: remarkablegames/setup-butler@v1
- name: Create export dir
run: mkdir -p ./exports
- name: Export game for web
run: godot --headless --export-release <my-export-preset-name> ./exports/index.html
- name: Upload to itch.io
run: butler push exports/html <my-itch-user>/<my_game>:<my-channel>
env:
BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }}
- In the github repo page, go to actions, and select the action name in the left menu
- Click in "Run Workflow", and then again in "Run Workflow"
- When the job is completed, go to the itch page and try to play the game. The Dialogic scene should not play. Press F12, and the error message should be on the console
Expected behavior
I expected the dialogic scene to play when exporting the game through a CI/CD environment.
System (please complete the following information):
- OS: Github Actions (ubuntu-latest)
- Godot Version: 4.4.1
- Dialogic Version: 2.0 Alpha 16
Solutions
I found out that adding this step before exporting the game in the workflow makes the Dialogic scene run:
- name: Open and import files
run: godot --headless --editor --quit --import .
It seems that opening the editor so it can import the project files once resolves it. Still feels like a bug, or at least, that there should be a warning to import the project files first before exporting.