name: 🔗 All builds on: workflow_dispatch: inputs: godot-treeish: description: A tag, branch or commit hash in the Godot repository. type: string default: 4.2 limboai-treeish: description: A tag, branch or commit hash in the LimboAI repository. type: string default: master godot-cpp-treeish: description: A tag, branch or commit hash in the godot-cpp repository. type: string default: 4.2 jobs: cache-sha: name: Cache treeish SHA runs-on: ubuntu-latest outputs: godot-sha: ${{ steps.cache-sha.outputs.godot-sha }} limboai-sha: ${{ steps.cache-sha.outputs.limboai-sha }} steps: - name: Clone Godot uses: actions/checkout@v4 with: repository: godotengine/godot ref: ${{ inputs.godot-treeish }} - name: Clone LimboAI module uses: actions/checkout@v4 with: path: modules/limboai ref: ${{ inputs.limboai-treeish }} - name: Cache SHA id: cache-sha run: | echo "godot-sha=$(git describe --tags --exact-match HEAD || git rev-parse HEAD)" >> "$GITHUB_OUTPUT" cd modules/limboai echo "limboai-sha=$(git describe --tags --exact-match HEAD || git rev-parse HEAD)" >> "$GITHUB_OUTPUT" android-build: name: 🤖 Android needs: cache-sha uses: ./.github/workflows/android.yml with: godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} ios-build: name: 🍏 iOS needs: cache-sha uses: ./.github/workflows/ios.yml with: godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} linux-build: name: 🐧 Linux needs: cache-sha uses: ./.github/workflows/linux.yml with: godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} test-build: false macos-build: name: 🍎 macOS needs: cache-sha uses: ./.github/workflows/macos.yml with: godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} windows-build: name: 🪟 Windows needs: cache-sha uses: ./.github/workflows/windows.yml with: godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} test-build: false web-build: name: 🌐 Web needs: cache-sha uses: ./.github/workflows/web.yml with: godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} gdextension: name: 🔌 GDExtension needs: cache-sha uses: ./.github/workflows/gdextension.yml with: godot-cpp-treeish: ${{ inputs.godot-cpp-treeish }} limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} test-build: false