From c1a7c48e04b3a79a2724e1878ae0757be2111ed7 Mon Sep 17 00:00:00 2001 From: Ben Sarmiento Date: Sat, 28 Oct 2023 22:08:06 +0200 Subject: [PATCH] change pattern of binary builds --- .github/workflows/binary-build.yml | 31 ++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/.github/workflows/binary-build.yml b/.github/workflows/binary-build.yml index f8b58dc..bc3f1fb 100644 --- a/.github/workflows/binary-build.yml +++ b/.github/workflows/binary-build.yml @@ -15,7 +15,7 @@ jobs: strategy: matrix: goos: [windows, darwin, linux] - goarch: [386, amd64, arm, arm64] # This list can be expanded based on your requirements + goarch: [386, amd64, arm, arm64] exclude: - goos: darwin goarch: 386 @@ -29,28 +29,39 @@ jobs: - name: Setup Go uses: actions/setup-go@v4 with: - go-version: 'stable' # Adjust according to your Go version + go-version: 'stable' + + - name: Determine version/tag + run: | + if [[ $GITHUB_REF == refs/tags/* ]]; then + echo "BUILD_VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV + else + echo "BUILD_VERSION=latest" >> $GITHUB_ENV + fi - name: Build run: | - CGO_ENABLED=0 GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} go build -ldflags="-s -w" -o zurg-v${GITHUB_REF#refs/tags/}-${{ matrix.goos }}-${{ matrix.goarch }} cmd/zurg/main.go + CGO_ENABLED=0 GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} go build -ldflags="-s -w" -o zurg-v${BUILD_VERSION}-${{ matrix.goos }}-${{ matrix.goarch }} cmd/zurg/main.go - # Install and use UPX to compress the binary, but exclude windows/amd64 + # Install and use UPX to compress the binary, but exclude specific combinations - name: Install and Compress with UPX - if: (matrix.goos != 'windows' && matrix.goarch != 'arm') || (matrix.goos != 'windows' && matrix.goarch != 'arm64') + if: (matrix.goos != 'windows' || matrix.goarch != 'arm') && (matrix.goos != 'windows' || matrix.goarch != 'arm64') run: | sudo apt-get update sudo apt-get install -y upx-ucl - upx --best zurg-v${GITHUB_REF#refs/tags/}-${{ matrix.goos }}-${{ matrix.goarch }} + upx --best zurg-v${BUILD_VERSION}-${{ matrix.goos }}-${{ matrix.goarch }} # Zip the binary - name: Zip Binary run: | - zip zurg-v${GITHUB_REF#refs/tags/}-${{ matrix.goos }}-${{ matrix.goarch }}.zip zurg-v${GITHUB_REF#refs/tags/}-${{ matrix.goos }}-${{ matrix.goarch }} + zip zurg-v${BUILD_VERSION}-${{ matrix.goos }}-${{ matrix.goarch }}.zip zurg-v${BUILD_VERSION}-${{ matrix.goos }}-${{ matrix.goarch }} + + # List files (for debugging) + - name: List files + run: ls -alh - name: Upload Artifacts uses: actions/upload-artifact@v3 with: - name: zurg-v${GITHUB_REF#refs/tags/}-${{ matrix.goos }}-${{ matrix.goarch }}.zip - path: | - zurg-v${GITHUB_REF#refs/tags/}-${{ matrix.goos }}-${{ matrix.goarch }}.zip + name: zurg-v${BUILD_VERSION}-${{ matrix.goos }}-${{ matrix.goarch }}.zip + path: zurg-v${BUILD_VERSION}-${{ matrix.goos }}-${{ matrix.goarch }}.zip