Skip to content

Commit 1bd1a22

Browse files
committed
ci: remove more unused files and directories in free runners to save more space
1 parent 8a8b464 commit 1bd1a22

File tree

1 file changed

+60
-28
lines changed

1 file changed

+60
-28
lines changed

src/ci/scripts/free-disk-space.sh

Lines changed: 60 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -69,31 +69,72 @@ printDF() {
6969
printSeparationLine "="
7070
}
7171

72-
removeDir() {
73-
dir=${1}
74-
75-
local before
76-
if [ ! -d "$dir" ]; then
77-
echo "::warning::Directory $dir does not exist, skipping."
78-
else
79-
before=$(getAvailableSpace)
80-
sudo rm -rf "$dir"
81-
printSavedSpace "$before" "Removed $dir"
82-
fi
83-
}
84-
85-
removeUnusedDirectories() {
86-
local dirs_to_remove=(
72+
removeUnusedFilesAndDirs() {
73+
local to_remove=(
74+
"/etc/mysql"
75+
"/usr/local/aws-sam-cli"
76+
"/usr/local/doc/cmake"
77+
"/usr/local/julia"*
8778
"/usr/local/lib/android"
88-
"/usr/share/dotnet"
79+
"/usr/local/share/chromedriver-"*
80+
"/usr/local/share/chromium"
81+
"/usr/local/share/cmake-"*
82+
"/usr/local/share/edge_driver"
83+
"/usr/local/share/gecko_driver"
84+
"/usr/local/share/icons"
85+
"/usr/local/share/vim"
86+
"/usr/local/share/emacs"
87+
"/usr/local/share/powershell"
88+
"/usr/local/share/vcpkg"
89+
"/usr/share/apache-maven-"*
90+
"/usr/share/gradle-"*
91+
"/usr/share/java"
92+
"/usr/share/kotlinc"
93+
"/usr/share/miniconda"
94+
"/usr/share/php"
95+
"/usr/share/ri"
96+
"/usr/share/swift"
97+
98+
# binaries
99+
"/usr/local/bin/azcopy"
100+
"/usr/local/bin/bicep"
101+
"/usr/local/bin/ccmake"
102+
"/usr/local/bin/cmake-"*
103+
"/usr/local/bin/cmake"
104+
"/usr/local/bin/cpack"
105+
"/usr/local/bin/ctest"
106+
"/usr/local/bin/helm"
107+
"/usr/local/bin/kind"
108+
"/usr/local/bin/kustomize"
109+
"/usr/local/bin/minikube"
110+
"/usr/local/bin/packer"
111+
"/usr/local/bin/phpunit"
112+
"/usr/local/bin/pulumi-"*
113+
"/usr/local/bin/pulumi"
114+
"/usr/local/bin/stack"
89115

90116
# Haskell runtime
91117
"/usr/local/.ghcup"
118+
119+
# Azure
120+
"/opt/az"
121+
"/usr/share/az_"*
122+
123+
# Environemnt variable set by GitHub Actions
124+
"$AGENT_TOOLSDIRECTORY"
92125
)
93126

94-
for dir in "${dirs_to_remove[@]}"; do
95-
removeDir "$dir"
127+
local existing=()
128+
for element in "${to_remove[@]}"; do
129+
if [ ! -e "$element" ]; then
130+
echo "::warning::Directory or file $element does not exist, skipping."
131+
else
132+
existing+=("$element")
133+
fi
96134
done
135+
136+
# Remove files and directories at once to save time.
137+
sudo rm -rf "${existing[@]}"
97138
}
98139

99140
execAndMeasureSpaceChange() {
@@ -138,14 +179,6 @@ cleanPackages() {
138179
sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed failed"
139180
}
140181

141-
# Remove Docker images
142-
cleanDocker() {
143-
echo "=> Removing the following docker images:"
144-
sudo docker image ls
145-
echo "=> Removing docker images..."
146-
sudo docker image prune --all --force || true
147-
}
148-
149182
# Remove Swap storage
150183
cleanSwap() {
151184
sudo swapoff -a || true
@@ -161,10 +194,9 @@ printDF "BEFORE CLEAN-UP:"
161194
echo ""
162195

163196
execAndMeasureSpaceChange cleanPackages "Unused packages"
164-
execAndMeasureSpaceChange cleanDocker "Docker images"
165197
execAndMeasureSpaceChange cleanSwap "Swap storage"
166198

167-
removeUnusedDirectories
199+
execAndMeasureSpaceChange removeUnusedFilesAndDirs "Unused files and directories"
168200

169201
# Output saved space statistic
170202
echo ""

0 commit comments

Comments
 (0)