Skip to content

chore: update GH upload action version #196

chore: update GH upload action version

chore: update GH upload action version #196

Workflow file for this run

name: Compile Geodot for Linux
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [ master, godot3 ]
pull_request:
branches: [ master, godot3 ]
# 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:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-24.04
# 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@v2
- name: Get godot-cpp commit hash
id: get-godot-cpp-hash
run: |
echo "hash=$(git submodule | head -n1 | awk '{print $1;}')" >> $GITHUB_OUTPUT
shell: bash
- name: Cache generated godot-cpp bindings
id: cache-bindings
uses: actions/cache@v2
env:
cache-name: godot-cpp-cache
with:
path: godot-cpp
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ github.ref_name }}-${{ steps.get-godot-cpp-hash.outputs.hash }}-linux
- name: Initialize submodules
if: steps.cache-bindings.outputs.cache-hit != 'true'
run: git submodule update --init --recursive
- name: Install dependencies
run: |
sudo apt-get update && sudo apt-get install libgdal-dev scons
- name: Generate Godot-CPP bindings
if: steps.cache-bindings.outputs.cache-hit != 'true'
run: scons platform=linux generate_bindings=yes
working-directory: godot-cpp
- name: Build Geodot
run: scons platform=linux
- name: Copy dependencies of Geodot to the addon folder
run: ldd libgeodot.so | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp '{}' ./
working-directory: demo/addons/geodot/x11
- name: Publish Artifacts
uses: actions/upload-artifact@v4
with:
name: linux-build
path: |
demo