abarichello / godot-ci

Docker image to export Godot Engine games. Templates for Gitlab CI and GitHub Actions to deploy to GitLab Pages/GitHub Pages/Itch.io.
https://hub.docker.com/r/barichello/godot-ci
MIT License
759 stars 133 forks source link

[3.5.2] Build hanging after failing to load resources #137

Closed 107zxz closed 8 months ago

107zxz commented 8 months ago

When attempting to run CI, all three builds hang after a few minutes. There are several import errors in the log output, but I'm not sure if these are responsible for the hang.

Repository: https://github.com/107zxz/inscr-onln/actions/runs/8306126279/job/22734051267

Log output:

Run mkdir -v -p build/mac
mkdir: created directory 'build'
mkdir: created directory 'build/mac'
Godot Engine v3.5.2.stable.official.170ba337a - https://godotengine.org

Loading resource: res://default_bus_layout.tres
CORE API HASH: 12532440077570[8](https://github.com/107zxz/inscr-onln/actions/runs/8306126279/job/22734051267#step:4:9)8[9](https://github.com/107zxz/inscr-onln/actions/runs/8306126279/job/22734051267#step:4:10)600
EDITOR API HASH: 2379059247500112242
Loading resource: res://default_env.tres
Loading resource: res://scripts/singletons/CardInfo.gd
Loading resource: res://scripts/singletons/GameOptions.gd
Loading resource: res://scripts/singletons/NetworkManager.gd
Loading resource: res://scripts/singletons/TunnelHandlerNew.gd
Loaded builtin certs
Loading resource: res://packed/RulesetPickerProto.tscn
ERROR: Unable to open file: res://.import/Ouroboros.png-2d9286f8f1eb5e94474f8612d875d55a.stex.
   at: _load_data (scene/resources/texture.cpp:470)
ERROR: Failed loading resource: res://.import/Ouroboros.png-2d9286f8f1eb5e94474f8612d875d55a.stex. Make sure resources have been imported by opening the project in the editor at least once.
   at: _load (core/io/resource_loader.cpp:270)
Loading resource: res://packed/UI/JakeLoading.tscn
Loading resource: res://gfx/portraits/Ouroboros.png
ERROR: Unable to open file: res://.import/Off.png-7bf2881149d3cafedab6459673714505.stex.
   at: _load_data (scene/resources/texture.cpp:470)
ERROR: Failed loading resource: res://.import/Off.png-7bf2881149d3cafedab6459673714505.stex. Make sure resources have been imported by opening the project in the editor at least once.
   at: _load (core/io/resource_loader.cpp:270)
Loading resource: res://themes/sigilMat.tres
Loading resource: res://themes/papertheme.tres
Loading resource: res://fonts/MarksmanReal.tres
Loading resource: res://gfx/extra/Off.png
Loading resource: res://gfx/extra/On.png
ERROR: Unable to open file: res://.import/On.png-b501778bdf146086002dabf141db139f.stex.
   at: _load_data (scene/resources/texture.cpp:470)
ERROR: Failed loading resource: res://.import/On.png-b501778bdf146086002dabf141db139f.stex. Make sure resources have been imported by opening the project in the editor at least once.
   at: _load (core/io/resource_loader.cpp:270)
Loading resource: res://fonts/ScoreFont.tres
Loading resource: res://fonts/Marksman.otf
Loading resource: res://scripts/UI/RulesetPickerProto.gd
Loading resource: res://packed/UI/RulesetLine.tscn
Loading resource: res://gfx/portraits/Stoat.png
ERROR: Unable to open file: res://.import/Stoat.png-[10](https://github.com/107zxz/inscr-onln/actions/runs/8306126279/job/22734051267#step:4:11)c9f87fe157552701bf6fdb77f3add9.stex.
   at: _load_data (scene/resources/texture.cpp:470)
ERROR: Failed loading resource: res://.import/Stoat.png-10c9f87fe157552701bf6fdb77f3add9.stex. Make sure resources have been imported by opening the project in the editor at least once.
   at: _load (core/io/resource_loader.cpp:270)
Loading resource: res://packed/UI/Error.tscn
Loading resource: res://packed/ThemeEditor.tscn
Loading resource: res://themes/backuptheme.tres
Loading resource: res://scripts/UI/ThemeEditor.gd
Loading resource: res://gfx/portraits/Cat.png
ERROR: Unable to open file: res://.import/Cat.png-3a80b558[13](https://github.com/107zxz/inscr-onln/actions/runs/8306126279/job/22734051267#step:4:14)0e28336bd65275dc6a1fb9.stex.
   at: _load_data (scene/resources/texture.cpp:470)
ERROR: Failed loading resource: res://.import/Cat.png-3a80b558130e28336bd65275dc6a1fb9.stex. Make sure resources have been imported by opening the project in the editor at least once.
   at: _load (core/io/resource_loader.cpp:270)
ERROR: Unable to open file: res://.import/Raven Egg.png-52c7b790c28596cfb00[17](https://github.com/107zxz/inscr-onln/actions/runs/8306126279/job/22734051267#step:4:18)b07368b09b0.stex.
   at: _load_data (scene/resources/texture.cpp:470)
ERROR: Failed loading resource: res://.import/Raven Egg.png-52c7b790c28596cfb0017b07368b09b0.stex. Make sure resources have been imported by opening the project in the editor at least once.
   at: _load (core/io/resource_loader.cpp:270)
Loading resource: res://gfx/pixport/Raven Egg.png

Contents of godot-ci.yml

name: "godot-ci export"
on: push

env:
  GODOT_VERSION: 3.5.2
  EXPORT_NAME: test-project

jobs:
  export-windows:
    name: Windows Export
    runs-on: ubuntu-20.04
    container:
      image: barichello/godot-ci:3.5.2
    steps:
      - name: Checkout
        uses: actions/checkout@v2
        with:
          lfs: true
      - name: Windows Build
        run: |
          mkdir -v -p build/windows
          godot --headless --verbose --export-release "Windows Desktop" ../build/windows/$EXPORT_NAME.exe
      - name: Upload Artifact
        uses: actions/upload-artifact@v1
        with:
          name: windows
          path: build/windows

  export-linux:
    name: Linux Export
    runs-on: ubuntu-20.04
    container:
      image: barichello/godot-ci:3.5.2
    steps:
      - name: Checkout
        uses: actions/checkout@v2
        with:
          lfs: true
      - name: Linux Build
        run: |
          mkdir -v -p build/linux
          godot --headless --verbose --export-release "Linux/X11" ../build/linux/$EXPORT_NAME.x86_64
      - name: Upload Artifact
        uses: actions/upload-artifact@v1
        with:
          name: linux
          path: build/linux

  export-web:
    name: Web Export
    runs-on: ubuntu-20.04
    container:
      image: barichello/godot-ci:3.5.2
    steps:
      - name: Checkout
        uses: actions/checkout@v2
        with:
          lfs: true
      - name: Web Build
        run: |
          mkdir -v -p build/web
          godot --headless --verbose --export-release "HTML5" ../build/web/index.html
      - name: Upload Artifact
        uses: actions/upload-artifact@v1
        with:
          name: web
          path: build/web
      - name: Install rsync 📚
        run: |
          apt-get update && apt-get install -y rsync
      - name: Deploy to GitHub Pages 🚀
        uses: JamesIves/github-pages-deploy-action@releases/v4
        with:
          branch: gh-pages # The branch the action should deploy to.
          folder: build/web # The folder the action should deploy.

  export-mac:
    name: Mac Export
    runs-on: ubuntu-20.04
    container:
      image: barichello/godot-ci:3.5.2
    steps:
      - name: Checkout
        uses: actions/checkout@v2
        with:
          lfs: true
      - name: Mac Build
        run: |
          mkdir -v -p build/mac
          godot --headless --verbose --export-release "Mac OSX" ../build/mac/$EXPORT_NAME.zip
      - name: Upload Artifact
        uses: actions/upload-artifact@v1
        with:
          name: mac
          path: build/mac
107zxz commented 8 months ago

Wrote my own github CI pipeline for Godot 3.5.3. Recommend doing the same

Calinou commented 8 months ago

Thanks for the report! Consolidating in https://github.com/abarichello/godot-ci/issues/121, as this is due to the same cause: https://github.com/abarichello/godot-ci/issues/121#issuecomment-2016653286