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

Mac OS and Linux Export Failed #26

Closed juunishimaster closed 4 years ago

juunishimaster commented 4 years ago

Hello,

I'm not too experienced with CI/CD script, so there's high chance I overlooked something simple rather than finding a bug or something. (Also, sorry if my English is confusing)

I use Godot 3.2.2 for this project. Windows export works well.

My gitlab-ci.yaml snippet looks like this:

linux:
    stage: export
    script:
        - mkdir -v -p build/linux
        - cd $EXPORT_NAME
        - godot -v --export "Linux/X11" ../build/linux/$EXPORT_NAME.x86_64
    artifacts:
        name: $EXPORT_NAME-$CI_JOB_NAME
        paths:
            - build/linux

mac:
    stage: export
    script:
        - mkdir -v -p build/mac
        - cd $EXPORT_NAME
        - godot -v --export "Mac OSX" ../build/mac/$EXPORT_NAME.zip
    artifacts:
        name: $EXPORT_NAME-$CI_JOB_NAME
        paths:
            - build/mac

And the error appeared is:

ERROR: _fs_changed: Invalid export preset name: Linux/X11.
   At: editor/editor_node.cpp:634.
EditorSettings: Save OK!
ERROR: ~List: Condition "_first != __null" is true.
   At: ./core/self_list.h:112.
ERROR: cleanup: There are still MemoryPool allocs in use at exit!
   At: core/pool_vector.cpp:69.
ERROR: _fs_changed: Invalid export preset name: Mac OSX.
   At: editor/editor_node.cpp:634.
EditorSettings: Save OK!
ERROR: ~List: Condition "_first != __null" is true.
   At: ./core/self_list.h:112.
ERROR: cleanup: There are still MemoryPool allocs in use at exit!
   At: core/pool_vector.cpp:69.

Thank you.

Calinou commented 4 years ago

You need to create two export presets named "Linux/X11" and "Mac OSX" and commit export_presets.cfg to version control. Make sure export_presets.cfg isn't present in your .gitignore file too.

juunishimaster commented 4 years ago

Oh, I see. There's export_presets.cfg in my .gitignore file.

Export success after I removed it.

Thank you for the help! :D I'll close this issue then.