From 03899850ac4ba9e4e7d39196f37548480838d88b Mon Sep 17 00:00:00 2001 From: Christoph Mewes Date: Thu, 25 Sep 2025 16:28:14 +0200 Subject: [PATCH 1/3] free up disk space before running goreleaser On-behalf-of: @SAP christoph.mewes@sap.com Signed-off-by: Marvin Beckers --- .github/workflows/goreleaser.yml | 35 ++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/.github/workflows/goreleaser.yml b/.github/workflows/goreleaser.yml index f4c1227e06a..b43a25d55b1 100644 --- a/.github/workflows/goreleaser.yml +++ b/.github/workflows/goreleaser.yml @@ -25,16 +25,29 @@ jobs: with: go-version: v1.23.10 - - name: Download go modules + - name: Free disk space run: | - echo "Downloading modules for go.mod" - go mod download - for gomod in **/go.mod; do - echo "Downloading modules for $gomod" - cd $(dirname $gomod) - go mod download - cd - - done + echo "Current disk usage:" + df -h + + # echo "Listing 100 largest packages" + # dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 100 + # df -h + + echo "Removing large packages" + sudo apt-get remove -y \ + '^llvm-.*' \ + '^mysql-server-.*' \ + '^temurin-.*' ant \ + microsoft-edge-stable azure-cli google-cloud-cli google-cloud-cli-anthoscli google-chrome-stable firefox powershell + sudo apt-get autoremove -y + sudo apt-get clean + + echo "Removing large directories" + sudo rm -rf /usr/share/dotnet/ + + echo "Current disk usage:" + df -h - name: Delete non-semver tags run: 'git tag -d $(git tag -l | grep -v "^v")' @@ -48,7 +61,7 @@ jobs: with: distribution: goreleaser version: latest - args: release --timeout 60m --parallelism 1 --fail-fast + args: release --timeout 60m env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} KREW_GITHUB_TOKEN: ${{ secrets.KREW_GITHUB_TOKEN }} @@ -59,7 +72,7 @@ jobs: with: distribution: goreleaser version: latest - args: release --timeout 60m --snapshot --parallelism 1 --fail-fast + args: release --timeout 60m --snapshot env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} KREW_GITHUB_TOKEN: ${{ secrets.KREW_GITHUB_TOKEN }} From 8dd79e50cd3383f99ccade8e089f5fa2f0d7c9db Mon Sep 17 00:00:00 2001 From: Christoph Mewes Date: Thu, 25 Sep 2025 17:40:52 +0200 Subject: [PATCH 2/3] use a pre-existing, faster action On-behalf-of: @SAP christoph.mewes@sap.com Signed-off-by: Marvin Beckers --- .github/workflows/goreleaser.yml | 123 +++++++++++++++---------------- 1 file changed, 61 insertions(+), 62 deletions(-) diff --git a/.github/workflows/goreleaser.yml b/.github/workflows/goreleaser.yml index b43a25d55b1..412ffa557de 100644 --- a/.github/workflows/goreleaser.yml +++ b/.github/workflows/goreleaser.yml @@ -3,11 +3,11 @@ name: goreleaser on: pull_request: paths: - - .github/workflows/goreleaser.yml - - .goreleaser.yaml + - .github/workflows/goreleaser.yml + - .goreleaser.yaml push: tags: - - 'v*' + - "v*" permissions: contents: write @@ -16,69 +16,68 @@ jobs: goreleaser: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # tag=v4.2.2 - with: - fetch-depth: 0 + - name: Free disk space + uses: thiagokokada/free-disk-space@9a03d73a373bab1e204b8815f5c7752392482762 + with: + # All of these do save some disk space, but are also somewhat slow to delete. + # So we keep them to just speed up the workflow overall. + android: false + aws-cli: false + debug: false + docker-images: false + google-cloud-sdk: false + heroku: false + llvm: false + opt: false + powershell: false + python: false + ruby: false + rust: false + tool-cache: false + usrlocal: false + usrmisc: false + varcache: false - - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # tag=v5.5.0 - with: - go-version: v1.23.10 + - name: Checkout + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # tag=v4.2.2 + with: + fetch-depth: 0 - - name: Free disk space - run: | - echo "Current disk usage:" - df -h + - name: Setup Go + - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # tag=v5.5.0 + with: + go-version: v1.23.10 - # echo "Listing 100 largest packages" - # dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n | tail -n 100 - # df -h + - name: Delete non-semver tags + run: 'git tag -d $(git tag -l | grep -v "^v")' - echo "Removing large packages" - sudo apt-get remove -y \ - '^llvm-.*' \ - '^mysql-server-.*' \ - '^temurin-.*' ant \ - microsoft-edge-stable azure-cli google-cloud-cli google-cloud-cli-anthoscli google-chrome-stable firefox powershell - sudo apt-get autoremove -y - sudo apt-get clean + - name: Set LDFLAGS + run: echo LDFLAGS="$(make ldflags)" >> $GITHUB_ENV - echo "Removing large directories" - sudo rm -rf /usr/share/dotnet/ + - name: Run GoReleaser on tag + if: github.event_name != 'pull_request' + uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # tag=v6.3.0 + with: + distribution: goreleaser + version: latest + args: release --timeout 60m + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + KREW_GITHUB_TOKEN: ${{ secrets.KREW_GITHUB_TOKEN }} - echo "Current disk usage:" - df -h + - name: Run GoReleaser on pull request + if: github.event_name == 'pull_request' + uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # tag=v6.3.0 + with: + distribution: goreleaser + version: latest + args: release --timeout 60m --snapshot + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + KREW_GITHUB_TOKEN: ${{ secrets.KREW_GITHUB_TOKEN }} - - name: Delete non-semver tags - run: 'git tag -d $(git tag -l | grep -v "^v")' - - - name: Set LDFLAGS - run: echo LDFLAGS="$(make ldflags)" >> $GITHUB_ENV - - - name: Run GoReleaser on tag - if: github.event_name != 'pull_request' - uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # tag=v6.3.0 - with: - distribution: goreleaser - version: latest - args: release --timeout 60m - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - KREW_GITHUB_TOKEN: ${{ secrets.KREW_GITHUB_TOKEN }} - - - name: Run GoReleaser on pull request - if: github.event_name == 'pull_request' - uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # tag=v6.3.0 - with: - distribution: goreleaser - version: latest - args: release --timeout 60m --snapshot - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - KREW_GITHUB_TOKEN: ${{ secrets.KREW_GITHUB_TOKEN }} - - - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # tag=v4.6.2 - if: ${{ always() }} - with: - name: binaries - path: dist/*.tar.gz + - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # tag=v4.6.2 + if: ${{ always() }} + with: + name: binaries + path: dist/*.tar.gz From de582d989b47e06a7cc2c1eedd53678c9685e969 Mon Sep 17 00:00:00 2001 From: Christoph Mewes Date: Thu, 25 Sep 2025 18:06:30 +0200 Subject: [PATCH 3/3] pin goreleaser to 2.x On-behalf-of: @SAP christoph.mewes@sap.com Signed-off-by: Marvin Beckers --- .github/workflows/goreleaser.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/goreleaser.yml b/.github/workflows/goreleaser.yml index 412ffa557de..9ac04846c1b 100644 --- a/.github/workflows/goreleaser.yml +++ b/.github/workflows/goreleaser.yml @@ -59,7 +59,7 @@ jobs: uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # tag=v6.3.0 with: distribution: goreleaser - version: latest + version: "~> v2" args: release --timeout 60m env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -70,7 +70,7 @@ jobs: uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # tag=v6.3.0 with: distribution: goreleaser - version: latest + version: "~> v2" args: release --timeout 60m --snapshot env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}