From ccfd92d958518b14f5906b820a869710c78a5785 Mon Sep 17 00:00:00 2001 From: Artem Shcherbatiuk Date: Mon, 5 Jan 2026 11:56:13 +0100 Subject: [PATCH 1/6] ci: update cache before install --- .github/actions/setup-ubuntu/action.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/actions/setup-ubuntu/action.yaml b/.github/actions/setup-ubuntu/action.yaml index da66e929c..65a950d03 100644 --- a/.github/actions/setup-ubuntu/action.yaml +++ b/.github/actions/setup-ubuntu/action.yaml @@ -14,7 +14,9 @@ runs: - name: Install dependencies # Shell must explicitly specify the shell for each step. https://github.com/orgs/community/discussions/18597 shell: bash - run: sudo apt install -y make direnv unzip lz4 wget curl npm jq pv coreutils libudev-dev + run: | + sudo apt-get update + sudo apt-get install -y make direnv unzip lz4 wget curl npm jq pv coreutils libudev-dev - name: Setup npm uses: actions/setup-node@v4 with: From ee9d0b961cfa679edef166d134299eb94fc7eeea Mon Sep 17 00:00:00 2001 From: Artem Shcherbatiuk Date: Mon, 5 Jan 2026 14:30:07 +0100 Subject: [PATCH 2/6] ci: free disk space before setting up the env --- .github/workflows/tests.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 55cf9ada7..4011eb34c 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -45,6 +45,11 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v4 + - name: Free disk space + run: | + sudo rm -rf /usr/share/dotnet + sudo rm -rf /usr/local/lib/android + sudo rm -rf /opt/ghc - name: Setup environment uses: ./.github/actions/setup-ubuntu - run: make bins From f3dab9caf0a519da5f0e3fd8d8e30107e2254783 Mon Sep 17 00:00:00 2001 From: Artem Shcherbatiuk Date: Mon, 5 Jan 2026 15:38:34 +0100 Subject: [PATCH 3/6] ci: removed disk cleanup step --- .github/workflows/tests.yaml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 4011eb34c..55cf9ada7 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -45,11 +45,6 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v4 - - name: Free disk space - run: | - sudo rm -rf /usr/share/dotnet - sudo rm -rf /usr/local/lib/android - sudo rm -rf /opt/ghc - name: Setup environment uses: ./.github/actions/setup-ubuntu - run: make bins From ae584b41cd706e65425c34bbc4d4009bdee9c7a8 Mon Sep 17 00:00:00 2001 From: Artem Shcherbatiuk Date: Mon, 5 Jan 2026 15:45:36 +0100 Subject: [PATCH 4/6] ci: use GA for runner cleanup --- .github/workflows/tests.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 55cf9ada7..0d1548231 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -45,6 +45,16 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v4 + - name: Free Disk Space (Ubuntu) + uses: jlumbroso/free-disk-space@main + with: + tool-cache: false + android: true + dotnet: true + haskell: true + large-packages: true + docker-images: true + swap-storage: true - name: Setup environment uses: ./.github/actions/setup-ubuntu - run: make bins From 87596044cdc30f012cd5fd6b9258f6b20c9b0221 Mon Sep 17 00:00:00 2001 From: Artem Shcherbatiuk Date: Mon, 5 Jan 2026 16:44:46 +0100 Subject: [PATCH 5/6] ci: revisited all options of free-disk-space step and added comments --- .github/workflows/tests.yaml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 0d1548231..6cf2fa96c 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -48,13 +48,13 @@ jobs: - name: Free Disk Space (Ubuntu) uses: jlumbroso/free-disk-space@main with: - tool-cache: false - android: true - dotnet: true - haskell: true - large-packages: true - docker-images: true - swap-storage: true + tool-cache: false # pre-cached tools (Node, Go, Python, Ruby). Saves ~6GB. Total CI impact: +90s (30s cleanup + 60s re-download) + docker-images: false # cached Docker images. Saves ~5-10GB. Total CI impact: +110s (20s cleanup + 90s re-pull goreleaser-cross) + swap-storage: false # swap storage. Saves ~4GB disk but risks OOM during parallel goreleaser builds. Keep swap for safety. + android: true # Android SDK. Saves ~14GB. Total CI impact: +30s (not used in build) + dotnet: true # .NET runtime. Saves ~2.7GB. Total CI impact: +10s (not used in build) + haskell: true # Haskell (GHC). Saves ~5GB. Total CI impact: +10s (not used in build) + large-packages: true # large packages (llvm, php, mysql, etc). Saves ~5.3GB. Total CI impact: +60s (not used in build) - name: Setup environment uses: ./.github/actions/setup-ubuntu - run: make bins From 8058d6020927fd8f059e48dd0567d943e051aec9 Mon Sep 17 00:00:00 2001 From: Artem Shcherbatiuk Date: Mon, 5 Jan 2026 16:49:40 +0100 Subject: [PATCH 6/6] chore: pinned version --- .github/workflows/tests.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 6cf2fa96c..18738471c 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -46,8 +46,8 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - name: Free Disk Space (Ubuntu) - uses: jlumbroso/free-disk-space@main - with: + uses: jlumbroso/free-disk-space@v1.3.1 + with: # bool variable is used to determine if the package should be removed or not tool-cache: false # pre-cached tools (Node, Go, Python, Ruby). Saves ~6GB. Total CI impact: +90s (30s cleanup + 60s re-download) docker-images: false # cached Docker images. Saves ~5-10GB. Total CI impact: +110s (20s cleanup + 90s re-pull goreleaser-cross) swap-storage: false # swap storage. Saves ~4GB disk but risks OOM during parallel goreleaser builds. Keep swap for safety.