From 23b5e77dccf6542f837e4374f75b6bb451e07486 Mon Sep 17 00:00:00 2001 From: luoliwoshang <2643523683@qq.com> Date: Wed, 3 Sep 2025 21:10:25 +0800 Subject: [PATCH] ci(release test):test cache macos tarball --- .github/workflows/release-build.yml | 92 ++++++++++++++++++----------- 1 file changed, 58 insertions(+), 34 deletions(-) diff --git a/.github/workflows/release-build.yml b/.github/workflows/release-build.yml index 175bfd4c..24d62d41 100644 --- a/.github/workflows/release-build.yml +++ b/.github/workflows/release-build.yml @@ -13,27 +13,35 @@ jobs: steps: - name: Check out code uses: actions/checkout@v5 - - name: Check sysroot cache - id: cache-darwin-sysroot - uses: actions/cache/restore@v4 - with: - path: .sysroot/darwin.tar.gz - key: darwin-sysroot-${{ hashFiles('.github/workflows/populate_darwin_sysroot.sh') }}-0.0.3 - lookup-only: true + # - name: Restore Darwin sysroot cache + # id: cache-darwin-sysroot + # uses: actions/cache/restore@v4 + # with: + # path: .sysroot/darwin.tar.gz + # key: darwin-sysroot-${{ hashFiles('.github/workflows/populate_darwin_sysroot.sh') }} + # - name: Populate Darwin sysroot + # if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' + # run: bash .github/workflows/populate_darwin_sysroot.sh - name: Populate Darwin sysroot - if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' - run: | - bash .github/workflows/populate_darwin_sysroot.sh - tar -czvf .sysroot/darwin.tar.gz -C .sysroot darwin + run: bash .github/workflows/populate_darwin_sysroot.sh + - name: Create Darwin sysroot tarball + # if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' + run: tar -czvf .sysroot/darwin.tar.gz -C .sysroot darwin - name: Save Darwin sysroot cache - if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' + # if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' uses: actions/cache/save@v4 with: path: .sysroot/darwin.tar.gz - key: ${{ steps.cache-darwin-sysroot.outputs.cache-primary-key }} + key: darwin-sysroot-${{ hashFiles('.github/workflows/populate_darwin_sysroot.sh') }}-0.0.5 + # - name: Upload Darwin sysroot tarball + # uses: actions/upload-artifact@v4 + # with: + # name: darwin-sysroot-tarball + # path: .sysroot/darwin.tar.gz + # compression-level: 0 build: runs-on: ubuntu-latest - needs: [populate-darwin-sysroot] + needs: populate-darwin-sysroot steps: - name: Check out code uses: actions/checkout@v5 @@ -43,23 +51,40 @@ jobs: uses: actions/setup-go@v5 with: go-version: 1.24.x - - name: Restore Macos sysroot cache - id: cache-macos-sysroot - uses: actions/cache/restore@v4 - with: - path: .sysroot/darwin.tar.gz - key: darwin-sysroot-${{ hashFiles('.github/workflows/populate_darwin_sysroot.sh') }}-0.0.3 - - name: Extract sysroots - run: | - tar -xzvf .sysroot/darwin.tar.gz -C .sysroot - - name: Populate Linux sysroot - run: | - bash .github/workflows/populate_linux_sysroot.sh - tree .sysroot - name: Set up QEMU uses: docker/setup-qemu-action@v3 with: image: tonistiigi/binfmt:qemu-v7.0.0-28 + # - name: Download Darwin sysroot tarball + # uses: actions/download-artifact@v5 + # with: + # name: darwin-sysroot-tarball + # path: .sysroot + - name: Restore Darwin sysroot cache + id: cache-darwin-sysroot + uses: actions/cache/restore@v4 + with: + path: .sysroot/darwin.tar.gz + key: darwin-sysroot-${{ hashFiles('.github/workflows/populate_darwin_sysroot.sh') }}-0.0.5 + - name: Populate Darwin sysroot + run: tar -xzvf .sysroot/darwin.tar.gz -C .sysroot + - name: Populate Linux sysroot + run: bash .github/workflows/populate_linux_sysroot.sh + # - name: Restore Linux sysroot cache + # id: cache-linux-sysroot + # uses: actions/cache/restore@v4 + # with: + # path: .sysroot + # key: linux-sysroot-${{ hashFiles('.github/workflows/populate_linux_sysroot.sh') }} + + # - name: Save Linux sysroot cache + # if: steps.cache-linux-sysroot.outputs.cache-hit != 'true' + # uses: actions/cache/save@v4 + # with: + # path: .sysroot + # key: ${{ steps.cache-linux-sysroot.outputs.cache-primary-key }} + - name: Check file + run: tree .sysroot - name: Run GoReleaser (Build & Test) env: GITHUB_TOKEN: ${{github.token}} @@ -158,7 +183,7 @@ jobs: echo "Looking for ${{ matrix.goos }}_${{ matrix.goarch }} archive..." ARCHIVE=$(ls *.tar.gz | head -n1) mkdir -p release-llgo - tar -xzvf "$ARCHIVE" -C release-llgo + tar -xzf "$ARCHIVE" -C release-llgo ls -la release-llgo/ echo "${{ github.workspace }}/release-llgo/bin/" >> $GITHUB_PATH @@ -185,13 +210,12 @@ jobs: uses: docker/setup-qemu-action@v3 with: image: tonistiigi/binfmt:qemu-v7.0.0-28 - - name: Restore Macos sysroot cache - id: cache-macos-sysroot - uses: actions/cache/restore@v4 + - name: Download Darwin sysroot tarball + uses: actions/download-artifact@v5 with: - path: .sysroot/darwin.tar.gz - key: darwin-sysroot-${{ hashFiles('.github/workflows/populate_darwin_sysroot.sh') }}-0.0.3 - - name: Extract sysroots + name: darwin-sysroot-tarball + path: .sysroot + - name: Populate Darwin sysroot run: tar -xzvf .sysroot/darwin.tar.gz -C .sysroot - name: Populate Linux sysroot run: bash .github/workflows/populate_linux_sysroot.sh