@@ -41,19 +41,84 @@ jobs:
4141 - arch : arm64
4242 runner : ubuntu-22.04-arm
4343 steps :
44- - name : Free Disk Space for Docker
45- uses : endersonmenezes/free-disk-space@7901478139cff6e9d44df5972fd8ab8fcade4db1
46- with :
47- remove_android : true
48- remove_dotnet : true
49- remove_haskell : true
50- remove_tool_cache : true
51- rm_cmd : rm
52- remove_packages : >-
53- azure-cli google-cloud-cli microsoft-edge-stable
54- google-chrome-stable firefox postgresql* temurin-* *llvm* mysql*
55- dotnet-sdk-*
56- remove_packages_one_command : true
44+ - name : remove android
45+ run : |
46+ df -h
47+ echo "Freeing up disk space for docker build..."
48+
49+ rm -rf /usr/local/lib/android || true
50+ rm -rf /opt/android || true
51+ rm -rf /usr/local/android-sdk || true
52+ rm -rf /home/runner/Android || true
53+
54+ # Remove Android packages if they exist
55+ ANDROID_PACKAGES=$(dpkg -l | grep -E "^ii.*(android|adb)" | awk '{print $2}' | tr '\n' ' ' || true)
56+ if [[ -n "${ANDROID_PACKAGES}" ]]; then
57+ echo "Removing Android packages: ${ANDROID_PACKAGES}"
58+ sudo apt-get remove -y "${ANDROID_PACKAGES}" --fix-missing > /dev/null 2>&1 || true
59+ sudo apt-get autoremove -y > /dev/null 2>&1 || true
60+ sudo apt-get clean > /dev/null 2>&1 || true
61+ fi
62+ df -h
63+ - name : remove haskell
64+ run : |
65+ df -h
66+ echo "Freeing up disk space for docker build..."
67+
68+ rm -rf /opt/ghc || true
69+ rm -rf /usr/local/.ghcup || true
70+ rm -rf /opt/cabal || true
71+ rm -rf /home/runner/.ghcup || true
72+ rm -rf /home/runner/.cabal || true
73+
74+ # Remove Haskell packages if they exist
75+ HASKELL_PACKAGES=$(dpkg -l | grep -E "^ii.*(ghc|haskell|cabal)" | awk '{print $2}' | tr '\n' ' ' || true)
76+ if [[ -n "${HASKELL_PACKAGES}" ]]; then
77+ echo "Removing Haskell packages: ${HASKELL_PACKAGES}"
78+ sudo apt-get remove -y "${HASKELL_PACKAGES}" --fix-missing > /dev/null 2>&1 || true
79+ sudo apt-get autoremove -y > /dev/null 2>&1 || true
80+ sudo apt-get clean > /dev/null 2>&1 || true
81+ fi
82+
83+ df -h
84+ - name : remove haskell
85+ run : |
86+ df -h
87+ echo "Freeing up disk space for docker build..."
88+
89+ # Remove .NET installation directories
90+ rm -rf /usr/share/dotnet || true
91+
92+ # Remove .NET documentation directories
93+ rm -rf /usr/share/doc/dotnet-* || true
94+
95+ # Remove .NET packages if they exist
96+ DOTNET_PACKAGES=$(dpkg -l | grep -E "^ii.*dotnet" | awk '{print $2}' | tr '\n' ' ' || true)
97+ if [[ -n "${DOTNET_PACKAGES}" ]]; then
98+ echo "Removing .NET packages: ${DOTNET_PACKAGES}"
99+ sudo apt-get remove -y "${DOTNET_PACKAGES}" --fix-missing > /dev/null 2>&1 || true
100+ sudo apt-get autoremove -y > /dev/null 2>&1 || true
101+ sudo apt-get clean > /dev/null 2>&1 || true
102+ fi
103+ df -h
104+ - name : remove packages
105+ run : |
106+ df -h
107+ echo "Freeing up disk space for docker build..."
108+
109+ # Remove specific packages if they exist
110+ PACKAGES_TO_REMOVE="azure-cli google-cloud-cli microsoft-edge-stable google-chrome-stable firefox postgresql* temurin-* *llvm* mysql* dotnet-sdk-*"
111+ for pkg in $PACKAGES_TO_REMOVE; do
112+ if dpkg -l | grep -q "^ii.*${pkg}"; then
113+ echo "Removing package: ${pkg}"
114+ sudo apt-get remove -y "${pkg}" --fix-missing > /dev/null 2>&1 || true
115+ fi
116+ done
117+
118+ sudo apt-get autoremove -y > /dev/null 2>&1 || true
119+ sudo apt-get clean > /dev/null 2>&1 || true
120+
121+ df -h
57122 - name : Login to github container registry
58123 uses : docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121
59124 with :
0 commit comments