From 4cd26a82b39a9790eeb9c79983ad94bec95d6498 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 17:29:36 +0100 Subject: [PATCH 01/34] remove more stuff --- src/ci/github-actions/jobs.yml | 9 --------- src/ci/scripts/free-disk-space.sh | 26 ++++++++++++++++++++++++-- 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/src/ci/github-actions/jobs.yml b/src/ci/github-actions/jobs.yml index c5b33a45db790..d425f93d6d85d 100644 --- a/src/ci/github-actions/jobs.yml +++ b/src/ci/github-actions/jobs.yml @@ -100,15 +100,6 @@ pr: - name: mingw-check-tidy continue_on_error: true <<: *job-linux-4c - - name: x86_64-gnu-llvm-18 - env: - ENABLE_GCC_CODEGEN: "1" - # We are adding (temporarily) a dummy commit on the compiler - READ_ONLY_SRC: "0" - DOCKER_SCRIPT: x86_64-gnu-llvm.sh - <<: *job-linux-16c - - name: x86_64-gnu-tools - <<: *job-linux-16c # Jobs that run when you perform a try build (@bors try) # These jobs automatically inherit envs.try, to avoid repeating diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 4a7dad0090b2e..3102e813c0ee4 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -79,7 +79,7 @@ execAndMeasureSpaceChange() { # Remove large packages # REF: https://github.com/apache/flink/blob/master/tools/azure-pipelines/free_disk_space.sh cleanPackages() { - sudo apt-get -qq remove -y --fix-missing \ + sudo apt-get -qq purge -y --autoremove --fix-missing \ '^aspnetcore-.*' \ '^dotnet-.*' \ '^llvm-.*' \ @@ -93,10 +93,24 @@ cleanPackages() { 'mono-devel' \ 'libgl1-mesa-dri' \ 'google-cloud-sdk' \ - 'google-cloud-cli' + 'google-cloud-cli' \ + '^java-*' \ + 'groff' \ + 'groff-base' \ + '^libllvm.*' \ + '^llvm.*' \ + 'gcc' \ + 'gcc-11' \ + 'libicu-dev' \ + '^vim.*' \ + 'python3-breezy' \ + 'snap' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed" + + echo "Installed packages sorted by size:" + dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr } # Remove Docker images @@ -123,6 +137,14 @@ echo "" removeDir /usr/local/lib/android removeDir /usr/share/dotnet +removeDir /usr/share/swift +removeDir "/usr/local/share/boost" +removeDir "$AGENT_TOOLSDIRECTORY" +removeDir /opt/hostedtoolcache/ +removeDir /usr/local/graalvm/ +removeDir /usr/local/share/powershell +removeDir /usr/local/share/chromium +removeDir /usr/local/lib/node_modules # Haskell runtime removeDir /opt/ghc From 47bf5346a04a7671eb2881a5b87030f929589971 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 17:38:08 +0100 Subject: [PATCH 02/34] no empty dirs --- src/ci/scripts/free-disk-space.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 3102e813c0ee4..6fab12baced3b 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -138,10 +138,7 @@ echo "" removeDir /usr/local/lib/android removeDir /usr/share/dotnet removeDir /usr/share/swift -removeDir "/usr/local/share/boost" removeDir "$AGENT_TOOLSDIRECTORY" -removeDir /opt/hostedtoolcache/ -removeDir /usr/local/graalvm/ removeDir /usr/local/share/powershell removeDir /usr/local/share/chromium removeDir /usr/local/lib/node_modules From 2508423c5b5b1091c957b680a628020f4745c87a Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 17:40:35 +0100 Subject: [PATCH 03/34] remove more pkgs --- src/ci/scripts/free-disk-space.sh | 54 +++++++++++++++++-------------- 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 6fab12baced3b..55ad299aebc09 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -80,31 +80,35 @@ execAndMeasureSpaceChange() { # REF: https://github.com/apache/flink/blob/master/tools/azure-pipelines/free_disk_space.sh cleanPackages() { sudo apt-get -qq purge -y --autoremove --fix-missing \ - '^aspnetcore-.*' \ - '^dotnet-.*' \ - '^llvm-.*' \ - 'php.*' \ - '^mongodb-.*' \ - '^mysql-.*' \ - 'azure-cli' \ - 'google-chrome-stable' \ - 'firefox' \ - 'powershell' \ - 'mono-devel' \ - 'libgl1-mesa-dri' \ - 'google-cloud-sdk' \ - 'google-cloud-cli' \ - '^java-*' \ - 'groff' \ - 'groff-base' \ - '^libllvm.*' \ - '^llvm.*' \ - 'gcc' \ - 'gcc-11' \ - 'libicu-dev' \ - '^vim.*' \ - 'python3-breezy' \ - 'snap' + '^aspnetcore-.*' \ + '^dotnet-.*' \ + '^llvm-.*' \ + 'php.*' \ + '^mongodb-.*' \ + '^mysql-.*' \ + 'azure-cli' \ + 'google-chrome-stable' \ + 'firefox' \ + 'powershell' \ + 'mono-devel' \ + 'libgl1-mesa-dri' \ + 'google-cloud-sdk' \ + 'google-cloud-cli' \ + '^java-*' \ + 'groff' \ + 'groff-base' \ + '^libllvm.*' \ + '^llvm.*' \ + 'gcc' \ + 'gcc-10' \ + 'gcc-11' \ + 'gcc-12' \ + 'kubectl' \ + 'libicu-dev' \ + '^vim.*' \ + 'python3-breezy' \ + 'microsoft-edge-stable' \ + 'snapd' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed" From 73b333f9f53a5786336e42a8ef6c20bca8d5307a Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 17:41:44 +0100 Subject: [PATCH 04/34] don't remove swap storage --- src/ci/scripts/free-disk-space.sh | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 55ad299aebc09..9adcdc6afa24b 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -125,13 +125,6 @@ cleanDocker() { sudo docker image prune --all --force || true } -# Remove Swap storage -cleanSwap() { - sudo swapoff -a || true - sudo rm -rf /mnt/swapfile || true - free -h -} - # Display initial disk space stats AVAILABLE_INITIAL=$(getAvailableSpace) From 2f85b99632decd06cc9b2ccc2ce2b81c8fd9d509 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 17:55:03 +0100 Subject: [PATCH 05/34] more packages --- src/ci/scripts/free-disk-space.sh | 61 +++++++++++++++++-------------- 1 file changed, 33 insertions(+), 28 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 9adcdc6afa24b..518e75418ebb8 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -80,34 +80,39 @@ execAndMeasureSpaceChange() { # REF: https://github.com/apache/flink/blob/master/tools/azure-pipelines/free_disk_space.sh cleanPackages() { sudo apt-get -qq purge -y --autoremove --fix-missing \ - '^aspnetcore-.*' \ - '^dotnet-.*' \ - '^llvm-.*' \ - 'php.*' \ - '^mongodb-.*' \ - '^mysql-.*' \ - 'azure-cli' \ - 'google-chrome-stable' \ - 'firefox' \ - 'powershell' \ - 'mono-devel' \ - 'libgl1-mesa-dri' \ - 'google-cloud-sdk' \ - 'google-cloud-cli' \ - '^java-*' \ - 'groff' \ - 'groff-base' \ - '^libllvm.*' \ - '^llvm.*' \ - 'gcc' \ - 'gcc-10' \ - 'gcc-11' \ - 'gcc-12' \ - 'kubectl' \ - 'libicu-dev' \ - '^vim.*' \ - 'python3-breezy' \ - 'microsoft-edge-stable' \ + '^aspnetcore-.*' \ + '^dotnet-.*' \ + '^llvm-.*' \ + 'php.*' \ + '^mongodb-.*' \ + '^mysql-.*' \ + 'azure-cli' \ + 'google-chrome-stable' \ + 'firefox' \ + 'powershell' \ + 'mono-devel' \ + 'libgl1-mesa-dri' \ + 'google-cloud-sdk' \ + 'google-cloud-cli' \ + '^java-*' \ + 'groff' \ + 'groff-base' \ + '^libllvm.*' \ + '^llvm.*' \ + 'gcc' \ + 'gcc-9' \ + 'gcc-10' \ + 'gcc-11' \ + 'gcc-12' \ + 'cpp-11' \ + 'kubectl' \ + 'libicu-dev' \ + '^vim.*' \ + 'python3-breezy' \ + 'python-babel-localedata' \ + 'microsoft-edge-stable' \ + 'mono-llvm-tools' \ + 'podman' \ 'snapd' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" From f88b7c20254104c088d3b3ace4d1ce74c072d338 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:00:12 +0100 Subject: [PATCH 06/34] print largest dirs --- src/ci/scripts/free-disk-space.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 518e75418ebb8..d8712083b0a0b 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -153,6 +153,9 @@ execAndMeasureSpaceChange cleanPackages "Large misc. packages" execAndMeasureSpaceChange cleanDocker "Docker images" execAndMeasureSpaceChange cleanSwap "Swap storage" +echo "largest directories:" +du --max-depth=7 /* -h | sort -nr | head -1000 + # Output saved space statistic echo "" printDF "AFTER CLEAN-UP:" From 56c826f72b2b0dc554fc4793341a84b651241815 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:05:05 +0100 Subject: [PATCH 07/34] list snaps --- src/ci/scripts/free-disk-space.sh | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index d8712083b0a0b..1e1e4f8770f39 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -118,15 +118,15 @@ cleanPackages() { sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed" - echo "Installed packages sorted by size:" + echo "=> Installed packages sorted by size:" dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr } # Remove Docker images cleanDocker() { - echo "Removing the following docker images:" + echo "=> Removing the following docker images:" sudo docker image ls - echo "Removing docker images..." + echo "=> Removing docker images..." sudo docker image prune --all --force || true } @@ -137,6 +137,9 @@ AVAILABLE_INITIAL=$(getAvailableSpace) printDF "BEFORE CLEAN-UP:" echo "" +echo "=> installed snaps:" +snap list + removeDir /usr/local/lib/android removeDir /usr/share/dotnet removeDir /usr/share/swift @@ -153,7 +156,7 @@ execAndMeasureSpaceChange cleanPackages "Large misc. packages" execAndMeasureSpaceChange cleanDocker "Docker images" execAndMeasureSpaceChange cleanSwap "Swap storage" -echo "largest directories:" +echo "=> largest directories:" du --max-depth=7 /* -h | sort -nr | head -1000 # Output saved space statistic From ed0b5cb96be228c26829f3ad9d1d9c413747692f Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:07:20 +0100 Subject: [PATCH 08/34] wip --- src/ci/scripts/free-disk-space.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 1e1e4f8770f39..1680c714427e5 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -62,7 +62,7 @@ removeDir() { sudo rm -rf "$dir" || true - printSavedSpace "$before" "$dir" + printSavedSpace "$before" "Removed $dir" } execAndMeasureSpaceChange() { From ae8f7402a9cf0bd6f3a630f85f3abff2d18d468e Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:11:05 +0100 Subject: [PATCH 09/34] remove snaps --- src/ci/scripts/free-disk-space.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 1680c714427e5..587db734f1cf2 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -130,6 +130,10 @@ cleanDocker() { sudo docker image prune --all --force || true } +removeAllSnaps() { + sudo snap remove $(snap list | awk '!/^Name|^core|^snapd/ {print $1}') +} + # Display initial disk space stats AVAILABLE_INITIAL=$(getAvailableSpace) @@ -152,7 +156,8 @@ removeDir /usr/local/lib/node_modules removeDir /opt/ghc removeDir /usr/local/.ghcup -execAndMeasureSpaceChange cleanPackages "Large misc. packages" +execAndMeasureSpaceChange removeAllSnaps "Snaps" +execAndMeasureSpaceChange cleanPackages "Unused packages" execAndMeasureSpaceChange cleanDocker "Docker images" execAndMeasureSpaceChange cleanSwap "Swap storage" From 893c92841b507d9d07b65f4e3b15b4b84119fb20 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:18:08 +0100 Subject: [PATCH 10/34] sudo --- src/ci/scripts/free-disk-space.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 587db734f1cf2..424653fd8a1dc 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -131,6 +131,7 @@ cleanDocker() { } removeAllSnaps() { + # This won't remove the snaps `core` and `snapd` sudo snap remove $(snap list | awk '!/^Name|^core|^snapd/ {print $1}') } @@ -141,9 +142,6 @@ AVAILABLE_INITIAL=$(getAvailableSpace) printDF "BEFORE CLEAN-UP:" echo "" -echo "=> installed snaps:" -snap list - removeDir /usr/local/lib/android removeDir /usr/share/dotnet removeDir /usr/share/swift @@ -162,7 +160,7 @@ execAndMeasureSpaceChange cleanDocker "Docker images" execAndMeasureSpaceChange cleanSwap "Swap storage" echo "=> largest directories:" -du --max-depth=7 /* -h | sort -nr | head -1000 +sudo du --max-depth=7 /* -h | sort -nr | head -1000 # Output saved space statistic echo "" From 7b37cc40e93b04b68fa8a34f8d90687ca46a3930 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:21:19 +0100 Subject: [PATCH 11/34] uninstall r --- src/ci/scripts/free-disk-space.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 424653fd8a1dc..675658ff72044 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -113,6 +113,7 @@ cleanPackages() { 'microsoft-edge-stable' \ 'mono-llvm-tools' \ 'podman' \ + '^r-base.*' \ 'snapd' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" From 2d71268c2f2825d0c36d9baf0ee2c90b9a7cf1a0 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 19:22:00 +0100 Subject: [PATCH 12/34] more --- src/ci/scripts/free-disk-space.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 675658ff72044..5fb40afb52c24 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -114,13 +114,14 @@ cleanPackages() { 'mono-llvm-tools' \ 'podman' \ '^r-base.*' \ + 'humanity-icon-theme' \ 'snapd' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed" echo "=> Installed packages sorted by size:" - dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr + dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | head -200 } # Remove Docker images @@ -150,6 +151,10 @@ removeDir "$AGENT_TOOLSDIRECTORY" removeDir /usr/local/share/powershell removeDir /usr/local/share/chromium removeDir /usr/local/lib/node_modules +removeDir /usr/share/miniconda/ +removeDir /usr/share/icons/ +removeDir "/usr/share/az_*" +removeDir /usr/lib/heroku/ # Haskell runtime removeDir /opt/ghc From 512fc8f0f35c79251468404f43ae6fc23c6ddaf3 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 19:23:46 +0100 Subject: [PATCH 13/34] remove duplicate code --- src/ci/scripts/free-disk-space.sh | 34 +++++++++++++++++-------------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 5fb40afb52c24..a7fc6df298cb4 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -144,21 +144,25 @@ AVAILABLE_INITIAL=$(getAvailableSpace) printDF "BEFORE CLEAN-UP:" echo "" -removeDir /usr/local/lib/android -removeDir /usr/share/dotnet -removeDir /usr/share/swift -removeDir "$AGENT_TOOLSDIRECTORY" -removeDir /usr/local/share/powershell -removeDir /usr/local/share/chromium -removeDir /usr/local/lib/node_modules -removeDir /usr/share/miniconda/ -removeDir /usr/share/icons/ -removeDir "/usr/share/az_*" -removeDir /usr/lib/heroku/ - -# Haskell runtime -removeDir /opt/ghc -removeDir /usr/local/.ghcup +dirs_to_remove=( + "/usr/local/lib/android" + "/usr/share/dotnet" + "/usr/share/swift" + "$AGENT_TOOLSDIRECTORY" + "/usr/local/share/powershell" + "/usr/local/share/chromium" + "/usr/local/lib/node_modules" + "/usr/share/miniconda/" + "/usr/share/icons/" + "/usr/share/az_*" + "/usr/lib/heroku/" + "/opt/ghc" + "/usr/local/.ghcup" +) + +for dir in "${dirs_to_remove[@]}"; do + removeDir "$dir" +done execAndMeasureSpaceChange removeAllSnaps "Snaps" execAndMeasureSpaceChange cleanPackages "Unused packages" From 9de37e3263241e92d2578bbac82d321f26e218ec Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 19:26:12 +0100 Subject: [PATCH 14/34] sort --- src/ci/scripts/free-disk-space.sh | 56 ++++++++++++++++--------------- 1 file changed, 29 insertions(+), 27 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index a7fc6df298cb4..810fb80a5232f 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -82,39 +82,39 @@ cleanPackages() { sudo apt-get -qq purge -y --autoremove --fix-missing \ '^aspnetcore-.*' \ '^dotnet-.*' \ + '^java-*' \ + '^libllvm.*' \ '^llvm-.*' \ - 'php.*' \ + '^llvm.*' \ '^mongodb-.*' \ '^mysql-.*' \ + '^r-base.*' \ + '^vim.*' \ 'azure-cli' \ - 'google-chrome-stable' \ + 'cpp-11' \ 'firefox' \ - 'powershell' \ - 'mono-devel' \ - 'libgl1-mesa-dri' \ - 'google-cloud-sdk' \ - 'google-cloud-cli' \ - '^java-*' \ - 'groff' \ - 'groff-base' \ - '^libllvm.*' \ - '^llvm.*' \ - 'gcc' \ - 'gcc-9' \ 'gcc-10' \ 'gcc-11' \ 'gcc-12' \ - 'cpp-11' \ + 'gcc-9' \ + 'gcc' \ + 'google-chrome-stable' \ + 'google-cloud-cli' \ + 'google-cloud-sdk' \ + 'groff-base' \ + 'groff' \ + 'humanity-icon-theme' \ 'kubectl' \ + 'libgl1-mesa-dri' \ 'libicu-dev' \ - '^vim.*' \ - 'python3-breezy' \ - 'python-babel-localedata' \ 'microsoft-edge-stable' \ + 'mono-devel' \ 'mono-llvm-tools' \ + 'php.*' \ 'podman' \ - '^r-base.*' \ - 'humanity-icon-theme' \ + 'powershell' \ + 'python-babel-localedata' \ + 'python3-breezy' \ 'snapd' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" @@ -145,17 +145,19 @@ printDF "BEFORE CLEAN-UP:" echo "" dirs_to_remove=( + "/usr/lib/heroku/" "/usr/local/lib/android" + "/usr/local/lib/node_modules" + "/usr/local/share/chromium" + "/usr/local/share/powershell" + "/usr/share/az_*" "/usr/share/dotnet" + "/usr/share/icons/" + "/usr/share/miniconda/" "/usr/share/swift" "$AGENT_TOOLSDIRECTORY" - "/usr/local/share/powershell" - "/usr/local/share/chromium" - "/usr/local/lib/node_modules" - "/usr/share/miniconda/" - "/usr/share/icons/" - "/usr/share/az_*" - "/usr/lib/heroku/" + + # Haskell runtime "/opt/ghc" "/usr/local/.ghcup" ) From e725d920de7c29ad905869be6bfce615c82be789 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 19:36:04 +0100 Subject: [PATCH 15/34] fix azure maybe --- src/ci/scripts/free-disk-space.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 810fb80a5232f..9ed6913b25ed7 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -83,6 +83,7 @@ cleanPackages() { '^aspnetcore-.*' \ '^dotnet-.*' \ '^java-*' \ + '^libicu.*' \ '^libllvm.*' \ '^llvm-.*' \ '^llvm.*' \ @@ -90,6 +91,7 @@ cleanPackages() { '^mysql-.*' \ '^r-base.*' \ '^vim.*' \ + 'adwaita-icon-theme' \ 'azure-cli' \ 'cpp-11' \ 'firefox' \ @@ -107,6 +109,7 @@ cleanPackages() { 'kubectl' \ 'libgl1-mesa-dri' \ 'libicu-dev' \ + 'mercurial-common' \ 'microsoft-edge-stable' \ 'mono-devel' \ 'mono-llvm-tools' \ @@ -115,6 +118,7 @@ cleanPackages() { 'powershell' \ 'python-babel-localedata' \ 'python3-breezy' \ + 'skopeo' \ 'snapd' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" @@ -150,7 +154,7 @@ dirs_to_remove=( "/usr/local/lib/node_modules" "/usr/local/share/chromium" "/usr/local/share/powershell" - "/usr/share/az_*" + "^/usr/share/az_.*" "/usr/share/dotnet" "/usr/share/icons/" "/usr/share/miniconda/" From 3d7aa691cfa7867ba5a74a4ef47902cbf8446511 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 19:42:58 +0100 Subject: [PATCH 16/34] extract to function --- src/ci/scripts/free-disk-space.sh | 61 ++++++++++++++----------------- 1 file changed, 28 insertions(+), 33 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 9ed6913b25ed7..593d2e0ce3686 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -54,17 +54,6 @@ printDF() { printSeparationLine "=" } -removeDir() { - dir=${1} - - local before - before=$(getAvailableSpace) - - sudo rm -rf "$dir" || true - - printSavedSpace "$before" "Removed $dir" -} - execAndMeasureSpaceChange() { local operation=${1} # Function to execute local title=${2} @@ -141,6 +130,33 @@ removeAllSnaps() { sudo snap remove $(snap list | awk '!/^Name|^core|^snapd/ {print $1}') } +removeUnusedDirectories() { + local dirs_to_remove=( + "/usr/lib/heroku/" + "/usr/local/lib/android" + "/usr/local/lib/node_modules" + "/usr/local/share/chromium" + "/usr/local/share/powershell" + "^/usr/share/az_.*" + "/usr/share/dotnet" + "/usr/share/icons/" + "/usr/share/miniconda/" + "/usr/share/swift" + "$AGENT_TOOLSDIRECTORY" + + # Haskell runtime + "/opt/ghc" + "/usr/local/.ghcup" + ) + local before + + for dir in "${dirs_to_remove[@]}"; do + before=$(getAvailableSpace) + sudo rm -rf "$dir" || true + printSavedSpace "$before" "Removed $dir" + done +} + # Display initial disk space stats AVAILABLE_INITIAL=$(getAvailableSpace) @@ -148,32 +164,11 @@ AVAILABLE_INITIAL=$(getAvailableSpace) printDF "BEFORE CLEAN-UP:" echo "" -dirs_to_remove=( - "/usr/lib/heroku/" - "/usr/local/lib/android" - "/usr/local/lib/node_modules" - "/usr/local/share/chromium" - "/usr/local/share/powershell" - "^/usr/share/az_.*" - "/usr/share/dotnet" - "/usr/share/icons/" - "/usr/share/miniconda/" - "/usr/share/swift" - "$AGENT_TOOLSDIRECTORY" - - # Haskell runtime - "/opt/ghc" - "/usr/local/.ghcup" -) - -for dir in "${dirs_to_remove[@]}"; do - removeDir "$dir" -done +removeUnusedDirectories execAndMeasureSpaceChange removeAllSnaps "Snaps" execAndMeasureSpaceChange cleanPackages "Unused packages" execAndMeasureSpaceChange cleanDocker "Docker images" -execAndMeasureSpaceChange cleanSwap "Swap storage" echo "=> largest directories:" sudo du --max-depth=7 /* -h | sort -nr | head -1000 From dd948750e1eea677b30749b055312b142825d3c1 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 19:43:39 +0100 Subject: [PATCH 17/34] fix azure maybe --- src/ci/scripts/free-disk-space.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 593d2e0ce3686..88b4cac6d0899 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -137,7 +137,7 @@ removeUnusedDirectories() { "/usr/local/lib/node_modules" "/usr/local/share/chromium" "/usr/local/share/powershell" - "^/usr/share/az_.*" + "/usr/share/az_"* "/usr/share/dotnet" "/usr/share/icons/" "/usr/share/miniconda/" From 1bc4307a26679bd346b57830c4c2708073684b62 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Tue, 21 Jan 2025 19:44:14 +0100 Subject: [PATCH 18/34] comment --- src/ci/scripts/free-disk-space.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 88b4cac6d0899..96922f101867d 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -142,6 +142,8 @@ removeUnusedDirectories() { "/usr/share/icons/" "/usr/share/miniconda/" "/usr/share/swift" + + # Environemnt variable set by GitHub Actions "$AGENT_TOOLSDIRECTORY" # Haskell runtime From eddaf237bfb888abb95c284a351625eca09ab012 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 10:41:17 +0100 Subject: [PATCH 19/34] change order --- src/ci/scripts/free-disk-space.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 96922f101867d..8dce2edb3fb91 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -166,12 +166,12 @@ AVAILABLE_INITIAL=$(getAvailableSpace) printDF "BEFORE CLEAN-UP:" echo "" -removeUnusedDirectories - execAndMeasureSpaceChange removeAllSnaps "Snaps" execAndMeasureSpaceChange cleanPackages "Unused packages" execAndMeasureSpaceChange cleanDocker "Docker images" +removeUnusedDirectories + echo "=> largest directories:" sudo du --max-depth=7 /* -h | sort -nr | head -1000 From 47d6ecbf6694f21fba9ae0e1515e810e33ef47b3 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 11:14:22 +0100 Subject: [PATCH 20/34] fail --- src/ci/scripts/free-disk-space.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 8dce2edb3fb91..a77805c7ce2de 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -1,4 +1,5 @@ #!/bin/bash +set -euo pipefail # Free disk space on Linux GitHub action runners # Script inspired by https://github.com/jlumbroso/free-disk-space From a4016f599c37bbb13d69e9d20e003c562b361a26 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 11:15:57 +0100 Subject: [PATCH 21/34] undo --- src/ci/scripts/free-disk-space.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index a77805c7ce2de..aa98652561082 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -95,7 +95,6 @@ cleanPackages() { 'google-cloud-sdk' \ 'groff-base' \ 'groff' \ - 'humanity-icon-theme' \ 'kubectl' \ 'libgl1-mesa-dri' \ 'libicu-dev' \ From 8a9428f40f0b7351e8ea3ba9c3d07e0d3b1f1e41 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 11:20:49 +0100 Subject: [PATCH 22/34] try fix --- src/ci/scripts/free-disk-space.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index aa98652561082..c5e146e24321e 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -73,7 +73,6 @@ cleanPackages() { '^aspnetcore-.*' \ '^dotnet-.*' \ '^java-*' \ - '^libicu.*' \ '^libllvm.*' \ '^llvm-.*' \ '^llvm.*' \ @@ -81,7 +80,6 @@ cleanPackages() { '^mysql-.*' \ '^r-base.*' \ '^vim.*' \ - 'adwaita-icon-theme' \ 'azure-cli' \ 'cpp-11' \ 'firefox' \ From b27f12cc0023734ce1224a252a471553dfbcc62f Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 11:37:28 +0100 Subject: [PATCH 23/34] fix --- src/ci/scripts/free-disk-space.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index c5e146e24321e..4ff985b315b5d 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -112,7 +112,7 @@ cleanPackages() { sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed" echo "=> Installed packages sorted by size:" - dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | head -200 + dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | head -200 || true } # Remove Docker images From f1e36c11dde51d8a9f6814c88e297bdeac188ffa Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 11:46:50 +0100 Subject: [PATCH 24/34] fix --- src/ci/scripts/free-disk-space.sh | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 4ff985b315b5d..3dc38b6424064 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -112,7 +112,8 @@ cleanPackages() { sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed" echo "=> Installed packages sorted by size:" - dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | head -200 || true + # sort always fails because `head` stops reading stdin + dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr 2>/dev/null | head -200 || true } # Remove Docker images @@ -155,6 +156,10 @@ removeUnusedDirectories() { sudo rm -rf "$dir" || true printSavedSpace "$before" "Removed $dir" done + + echo "=> largest directories:" + # sort always fails because `head` stops reading stdin + sudo du --max-depth=7 /* -h | sort -nr 2>/dev/null | head -1000 || true } # Display initial disk space stats @@ -170,9 +175,6 @@ execAndMeasureSpaceChange cleanDocker "Docker images" removeUnusedDirectories -echo "=> largest directories:" -sudo du --max-depth=7 /* -h | sort -nr | head -1000 - # Output saved space statistic echo "" printDF "AFTER CLEAN-UP:" From c6eed902822cf91f03ebb727911a6a1274d38998 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 11:57:05 +0100 Subject: [PATCH 25/34] remove libicu --- src/ci/scripts/free-disk-space.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 3dc38b6424064..3d3a533796afd 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -95,7 +95,7 @@ cleanPackages() { 'groff' \ 'kubectl' \ 'libgl1-mesa-dri' \ - 'libicu-dev' \ + '^libicu.*' \ 'mercurial-common' \ 'microsoft-edge-stable' \ 'mono-devel' \ From b21697a7ac25bd985f609e489b6853ca7fc64373 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 12:00:24 +0100 Subject: [PATCH 26/34] revert --- src/ci/scripts/free-disk-space.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 3d3a533796afd..3dc38b6424064 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -95,7 +95,7 @@ cleanPackages() { 'groff' \ 'kubectl' \ 'libgl1-mesa-dri' \ - '^libicu.*' \ + 'libicu-dev' \ 'mercurial-common' \ 'microsoft-edge-stable' \ 'mono-devel' \ From 569ebf37122a4f30d20a8fb0f38a6c04eaa7e270 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 12:05:30 +0100 Subject: [PATCH 27/34] libcpp --- src/ci/scripts/free-disk-space.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 3dc38b6424064..1720309242082 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -74,8 +74,8 @@ cleanPackages() { '^dotnet-.*' \ '^java-*' \ '^libllvm.*' \ - '^llvm-.*' \ '^llvm.*' \ + '^libc++.*' \ '^mongodb-.*' \ '^mysql-.*' \ '^r-base.*' \ @@ -137,6 +137,7 @@ removeUnusedDirectories() { "/usr/local/share/chromium" "/usr/local/share/powershell" "/usr/share/az_"* + "/usr/local/share/cmake-"* "/usr/share/dotnet" "/usr/share/icons/" "/usr/share/miniconda/" From 971d07d842f17ab64cd824ada6e633287f02c467 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 12:07:15 +0100 Subject: [PATCH 28/34] tmux --- src/ci/scripts/free-disk-space.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 1720309242082..75d2bd6fd615d 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -106,7 +106,8 @@ cleanPackages() { 'python-babel-localedata' \ 'python3-breezy' \ 'skopeo' \ - 'snapd' + 'snapd' \ + 'tmux' sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed" sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed" From ba6d1e1c3a397c7b3f3cf50a34e6a1f129c2f3da Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 12:07:56 +0100 Subject: [PATCH 29/34] revert libcpp --- src/ci/scripts/free-disk-space.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 75d2bd6fd615d..f879f91fe85b2 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -75,7 +75,6 @@ cleanPackages() { '^java-*' \ '^libllvm.*' \ '^llvm.*' \ - '^libc++.*' \ '^mongodb-.*' \ '^mysql-.*' \ '^r-base.*' \ From 3f8b1e0d2517bef1374fa449fc62d537c780b598 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 12:09:19 +0100 Subject: [PATCH 30/34] jobs --- src/ci/github-actions/jobs.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ci/github-actions/jobs.yml b/src/ci/github-actions/jobs.yml index d425f93d6d85d..451e28d042683 100644 --- a/src/ci/github-actions/jobs.yml +++ b/src/ci/github-actions/jobs.yml @@ -169,7 +169,7 @@ auto: <<: *job-linux-4c - name: dist-powerpc64le-linux - <<: *job-linux-4c-largedisk + <<: *job-linux-4c - name: dist-riscv64-linux <<: *job-linux-4c @@ -282,7 +282,7 @@ auto: - name: x86_64-gnu-debug # This seems to be needed because a full stage 2 build + run-make tests # overwhelms the storage capacity of the standard 4c runner. - <<: *job-linux-4c-largedisk + <<: *job-linux-4c - name: x86_64-gnu-distcheck <<: *job-linux-8c From 24838ae749f88a2fa0e9d7d67fda3b9c141c4ba6 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 12:55:10 +0100 Subject: [PATCH 31/34] fmt --- src/ci/scripts/free-disk-space.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index f879f91fe85b2..8405f1700cc15 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -113,7 +113,8 @@ cleanPackages() { echo "=> Installed packages sorted by size:" # sort always fails because `head` stops reading stdin - dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr 2>/dev/null | head -200 || true + dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | \ + sort -nr 2>/dev/null | head -200 || true } # Remove Docker images From 6ca1a50b5485de162b5198b5792be552d8607520 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 22 Jan 2025 14:21:48 +0100 Subject: [PATCH 32/34] keep node modules --- src/ci/scripts/free-disk-space.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 8405f1700cc15..321ed67640e7b 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -134,7 +134,6 @@ removeUnusedDirectories() { local dirs_to_remove=( "/usr/lib/heroku/" "/usr/local/lib/android" - "/usr/local/lib/node_modules" "/usr/local/share/chromium" "/usr/local/share/powershell" "/usr/share/az_"* From 6fe739a9a47d637452231e4e921c6f85d40dcc5c Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Mon, 27 Jan 2025 15:27:38 +0100 Subject: [PATCH 33/34] hold npm --- src/ci/scripts/free-disk-space.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index 321ed67640e7b..fab5c12038ecc 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -69,6 +69,11 @@ execAndMeasureSpaceChange() { # Remove large packages # REF: https://github.com/apache/flink/blob/master/tools/azure-pipelines/free_disk_space.sh cleanPackages() { + # Prevent npm from being removed. + # This command unfortunately also prevents npm from being updated, + # but it should be fine because we don't run `apt upgrade`. + sudo apt-mark hold npm + sudo apt-get -qq purge -y --autoremove --fix-missing \ '^aspnetcore-.*' \ '^dotnet-.*' \ From dfde5f67ae40acfc54555f3dd41c10f3e4ed8ef8 Mon Sep 17 00:00:00 2001 From: MarcoIeni <11428655+MarcoIeni@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:00:33 +0100 Subject: [PATCH 34/34] check if directory exists --- src/ci/scripts/free-disk-space.sh | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/ci/scripts/free-disk-space.sh b/src/ci/scripts/free-disk-space.sh index fab5c12038ecc..c3c01da646d32 100755 --- a/src/ci/scripts/free-disk-space.sh +++ b/src/ci/scripts/free-disk-space.sh @@ -118,8 +118,8 @@ cleanPackages() { echo "=> Installed packages sorted by size:" # sort always fails because `head` stops reading stdin - dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | \ - sort -nr 2>/dev/null | head -200 || true + dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | + sort -nr 2>/dev/null | head -200 || true } # Remove Docker images @@ -158,6 +158,10 @@ removeUnusedDirectories() { local before for dir in "${dirs_to_remove[@]}"; do + if [ ! -d "$dir" ]; then + echo "::warning::Directory $dir does not exist, skipping." + continue + fi before=$(getAvailableSpace) sudo rm -rf "$dir" || true printSavedSpace "$before" "Removed $dir" @@ -165,7 +169,7 @@ removeUnusedDirectories() { echo "=> largest directories:" # sort always fails because `head` stops reading stdin - sudo du --max-depth=7 /* -h | sort -nr 2>/dev/null | head -1000 || true + sudo du --max-depth=7 /* -h | sort -nr 2>/dev/null | head -1000 || true } # Display initial disk space stats