From 58848b709cf6efaada127d2400a5618e85caab97 Mon Sep 17 00:00:00 2001 From: Serhii Snitsaruk Date: Fri, 3 Nov 2023 12:45:55 +0100 Subject: [PATCH] GHA: Cache godot & limboai treeish SHA to use with all builds --- .github/workflows/all_builds.yml | 56 +++++++++++++++++++++++++------- 1 file changed, 44 insertions(+), 12 deletions(-) diff --git a/.github/workflows/all_builds.yml b/.github/workflows/all_builds.yml index 68bef22..d7a0565 100644 --- a/.github/workflows/all_builds.yml +++ b/.github/workflows/all_builds.yml @@ -12,44 +12,76 @@ on: default: master 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@v3 + with: + repository: godotengine/godot + ref: ${{ inputs.godot-treeish }} + + - name: Clone LimboAI module + uses: actions/checkout@v3 + with: + path: modules/limboai + ref: ${{ inputs.limboai-treeish }} + + - name: Cache SHA + id: cache-sha + run: | + echo "godot-sha=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT" + cd modules/limboai + echo "limboai-sha=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT" + android-build: name: 🤖 Android + needs: cache-sha uses: ./.github/workflows/android.yml with: - godot-treeish: ${{ inputs.godot-treeish }} - limboai-treeish: ${{ inputs.limboai-treeish }} + 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: ${{ inputs.godot-treeish }} - limboai-treeish: ${{ inputs.limboai-treeish }} + 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: ${{ inputs.godot-treeish }} - limboai-treeish: ${{ inputs.limboai-treeish }} + godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} + limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} macos-build: name: 🍎 macOS + needs: cache-sha uses: ./.github/workflows/macos.yml with: - godot-treeish: ${{ inputs.godot-treeish }} - limboai-treeish: ${{ inputs.limboai-treeish }} + 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: ${{ inputs.godot-treeish }} - limboai-treeish: ${{ inputs.limboai-treeish }} + godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} + limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }} web-build: name: 🌐 Web + needs: cache-sha uses: ./.github/workflows/web.yml with: - godot-treeish: ${{ inputs.godot-treeish }} - limboai-treeish: ${{ inputs.limboai-treeish }} + godot-treeish: ${{ needs.cache-sha.outputs.godot-sha }} + limboai-treeish: ${{ needs.cache-sha.outputs.limboai-sha }}