# Free disk space on Windows GitHub action runners. $ErrorActionPreference = 'Stop' Get-Volume | Out-String | Write-Output $available = $(Get-Volume C).SizeRemaining $dirs = 'C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm', 'C:\rtools45', 'C:\ghcup', 'C:\Program Files (x86)\Android', 'C:\Program Files\Google\Chrome', 'C:\Program Files (x86)\Microsoft\Edge', 'C:\Program Files\Mozilla Firefox', 'C:\Program Files\MySQL', 'C:\Julia', 'C:\Program Files\MongoDB', 'C:\Program Files\Azure Cosmos DB Emulator', 'C:\Program Files\PostgreSQL', 'C:\Program Files\Unity Hub', 'C:\Strawberry', 'C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk' foreach ($dir in $dirs) { Start-ThreadJob -InputObject $dir { Remove-Item -Recurse -Force -LiteralPath $input } | Out-Null } foreach ($job in Get-Job) { Wait-Job $job | Out-Null if ($job.Error) { Write-Output "::warning file=$PSCommandPath::$($job.Error)" } Remove-Job $job } Get-Volume | Out-String | Write-Output $saved = ($(Get-Volume C).SizeRemaining - $available) / 1gb $savedRounded = [math]::Round($saved, 3) Write-Output "total space saved: $savedRounded GB"