tools for exporting godot projects via Github Actions
Diffstat (limited to '.github/actions/setup-godot/action.yml')
| -rw-r--r-- | .github/actions/setup-godot/action.yml | 73 |
1 files changed, 13 insertions, 60 deletions
diff --git a/.github/actions/setup-godot/action.yml b/.github/actions/setup-godot/action.yml index a21293a..6df327c 100644 --- a/.github/actions/setup-godot/action.yml +++ b/.github/actions/setup-godot/action.yml @@ -4,69 +4,22 @@ description: Setup godot and repo runs: using: "composite" steps: - - name: Check if setup needed - id: setup - run: | - if [[ ! -d ~/.config/godot ]]; - then echo "needed=true" >> "$GITHUB_OUTPUT"; echo "::debug::need get deps"; - else - echo "needed=false" >> "$GITHUB_OUTPUT"; echo "::debug::no need get deps"; - fi - shell: bash - - name: Checkout - if: steps.setup.outputs.needed == 'true' - uses: actions/checkout@v3 + uses: actions/checkout@v2 with: - fetch-depth: 0 lfs: true submodules: recursive - path: repo - - - name: Setup python - if: steps.setup.outputs.needed == 'true' - uses: actions/setup-python@v4 - with: - python-version: "3.9" - - - name: Setup godot - if: steps.setup.outputs.needed == 'true' + - name: Setup run: | - echo "::group::Setup godot" - - # config - mkdir -p ~/.config/godot/ - mv /root/.config/godot/editor_settings-3.tres ~/.config/godot/editor_settings-3.tres - mv /root/.config/godot/editor_settings-4.tres ~/.config/godot/editor_settings-4.tres || true - PROJECT_PATH="$(wget -q 'https://raw.githubusercontent.com/bend-n/godot-actions/main/.github/actions/setup-godot/project_path.py' -O - | python - "$PROJECT_PATH")" - echo "PROJECT_PATH=$PROJECT_PATH" >>$GITHUB_ENV - cd "$PROJECT_PATH" || true - - # create version label thing - git config --global --add safe.directory "$(pwd)" && printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" >version - - # templates - TEMPS_DIRNAME="templates" - [[ ${GODOT_VERSION:0:1} -gt 3 ]] && TEMPS_DIRNAME="export_templates" - VERSION="$(wget -q 'https://raw.githubusercontent.com/bend-n/godot-actions/main/.github/actions/setup-godot/parse.py' -O - | python - "$GODOT_VERSION")" - TEMPLATES_PATH=".local/share/godot/$TEMPS_DIRNAME/$VERSION" - echo "Putting export templates in $TEMPLATES_PATH." - mkdir -p "$HOME/$TEMPLATES_PATH" - if [[ -f /root/templates.tpz ]]; then # brand new container - mkdir -p ~/.cache - unzip -q /root/templates.tpz -d "$HOME/$TEMPLATES_PATH" - else # fallback to the old container method - mv "/root/$TEMPLATES_PATH/"* "$HOME/$TEMPLATES_PATH" - fi - echo -e "Installed templates: $(ls "$HOME/$TEMPLATES_PATH" | tr '\n' ' ')\n" - - # gpm - if [[ -f godot.package ]]; then - echo "Installing addons via the GPM" - wget -q "https://github.com/godot-package-manager/cli/releases/latest/download/godot-package-manager.x86_64" -O gpm - chmod +x gpm - ./gpm update --cfg-file godot.package --lock-file /dev/null - rm gpm - fi - echo "::endgroup::" + BASE_URL="https://downloads.tuxfamily.org/godotengine/${GODOT_VERSION}${SUBDIR}" + HEADLESS="$BASE_URL/Godot_v${GODOT_VERSION}-${RELEASE}_linux_headless.64.zip" + TEMPLATES="$BASE_URL/Godot_v${GODOT_VERSION}-${RELEASE}_export_templates.tpz" + wget -nv "$HEADLESS" -O godot.zip + wget -nv "$TEMPLATES" -O templates.zip + mkdir ~/.cache && mkdir -p ~/.config/godot && mkdir -p ~/.local/share/godot/templates/${GODOT_VERSION}.${RELEASE} + unzip godot.zip && mv "Godot_v${GODOT_VERSION}-${RELEASE}_linux_headless.64" /usr/local/bin/godot + unzip templates.zip && mv templates/* ~/.local/share/godot/templates/${GODOT_VERSION}.${RELEASE} + rm godot.zip templates.zip + + godot -e -q shell: bash |