Skip to content

Dialogic timeline won't run the exporting through CI/CD #2614

@Vitorgus

Description

@Vitorgus

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:

  1. Create a godot game that calls a dialogic timeline
  2. Create an export preset (I tested with windows and web)
  3. Create an itch page for the game
  4. Setup a git repo in the game root dir
  5. Create a github repo for the game
  6. Push the git repo to github
  7. Get a butler (itch's CLI) API key
  8. Configure the butler API key as a repo secret
  9. 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 }}
  1. In the github repo page, go to actions, and select the action name in the left menu

Image

  1. Click in "Run Workflow", and then again in "Run Workflow"

Image

  1. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Needs testingMore feedback/testing would be good

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions