-
-
Notifications
You must be signed in to change notification settings - Fork 226
fix: System.IO.IOException: No space left on device on linux-musl x64 #4743
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 5 commits
3532d9b
f3838b2
e0831ca
d6f5edf
a6fce27
1037435
2dc7ca6
b4486c3
499e7e1
7970193
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -23,13 +23,40 @@ runs: | |
| if: runner.os == 'Linux' | ||
| shell: bash | ||
| run: | | ||
| df -h /dev/root | ||
| sudo rm -rf /usr/local/.ghcup | ||
| sudo rm -rf /usr/local/julia1.10.5 | ||
| sudo rm -rf /usr/lib/heroku | ||
| sudo rm -rf /opt/hostedtoolcache/go | ||
| sudo rm -rf /opt/hostedtoolcache/Ruby | ||
| echo "Disk usage before cleanup:" | ||
| df -h /dev/root 2>/dev/null || df -h | ||
|
|
||
| # Remove language runtimes and tools | ||
| sudo rm -rf /usr/local/.ghcup || echo "::warning::Failed to remove .ghcup" | ||
| sudo rm -rf /usr/local/julia1.10.5 || echo "::warning::Failed to remove Julia" | ||
| sudo rm -rf /usr/lib/heroku || echo "::warning::Failed to remove Heroku" | ||
| sudo rm -rf /opt/hostedtoolcache/go || echo "::warning::Failed to remove Go" | ||
| sudo rm -rf /opt/hostedtoolcache/Ruby || echo "::warning::Failed to remove Ruby" | ||
|
|
||
| # Remove multiple LLVM versions (keep only one if needed) | ||
| sudo rm -rf /usr/lib/llvm-13 || echo "::warning::Failed to remove LLVM 13" | ||
| sudo rm -rf /usr/lib/llvm-14 || echo "::warning::Failed to remove LLVM 14" | ||
| sudo rm -rf /usr/lib/llvm-15 || echo "::warning::Failed to remove LLVM 15" | ||
|
|
||
| # Remove Azure CLI | ||
| sudo rm -rf /opt/az || echo "::warning::Failed to remove Azure CLI" | ||
|
|
||
| # Remove unnecessary .NET SDKs (keep only what we need) | ||
| sudo rm -rf /usr/share/dotnet/sdk/6.* || echo "::warning::Failed to remove .NET SDK 6.x" | ||
| sudo rm -rf /usr/share/dotnet/sdk/7.* || echo "::warning::Failed to remove .NET SDK 7.x" | ||
|
|
||
| # Remove other large tools | ||
| sudo rm -rf /opt/hostedtoolcache/CodeQL || echo "::warning::Failed to remove CodeQL" | ||
| sudo rm -rf /usr/local/share/chromium || echo "::warning::Failed to remove Chromium" | ||
| sudo rm -rf /usr/local/share/chrome_driver || echo "::warning::Failed to remove Chrome Driver" | ||
| sudo rm -rf /usr/local/share/gecko_driver || echo "::warning::Failed to remove Gecko Driver" | ||
|
|
||
| # Clean up apt packages | ||
| sudo apt-get remove -y '^mysql-.*' --fix-missing || echo "::warning::The command [sudo apt-get remove -y '^mysql-.*' --fix-missing] failed to complete successfully. Proceeding..." | ||
| sudo apt-get remove -y '^postgresql-.*' --fix-missing || echo "::warning::PostgreSQL removal failed" | ||
| sudo apt-get remove -y '^mongodb-.*' --fix-missing || echo "::warning::MongoDB removal failed" | ||
| sudo apt-get autoremove -y || echo "::warning::The command [sudo apt-get autoremove -y] failed to complete successfully. Proceeding..." | ||
| sudo apt-get clean || echo "::warning::The command [sudo apt-get clean] failed to complete successfully. Proceeding..." | ||
| df -h /dev/root | ||
|
|
||
|
Comment on lines
+50
to
+56
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. question: We get these warnings during the build: # .NET (linux-musl-x64)
The command [sudo apt-get clean] failed to complete successfully. Proceeding...
# .NET (linux-musl-x64)
The command [sudo apt-get autoremove -y] failed to complete successfully. Proceeding...
# .NET (linux-musl-x64)
MongoDB removal failed
# .NET (linux-musl-x64)
PostgreSQL removal failed
# .NET (linux-musl-x64)
The command [sudo apt-get remove -y '^mysql-.*' --fix-missing] failed to complete successfully. Proceeding...
# .NET (linux-musl-arm64)
The command [sudo apt-get clean] failed to complete successfully. Proceeding...
# .NET (linux-musl-arm64)
The command [sudo apt-get autoremove -y] failed to complete successfully. Proceeding...
# .NET (linux-musl-arm64)
MongoDB removal failed
# .NET (linux-musl-arm64)
PostgreSQL removal failed
# .NET (linux-musl-arm64)
The command [sudo apt-get remove -y '^mysql-.*' --fix-missing] failed to complete successfully. Proceeding...Can we Maybe something like: - name: Remove unused packages
if: ${{ !contains(matrix.container.image, 'alpine') }}
run: |
# Clean up apt packages
sudo apt-get ...
...
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Oh, I meant to just execute the
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ah OK, we can tidy up the non-container runners in another PR if need be 👍🏻 |
||
| echo "Disk usage after cleanup:" | ||
| df -h /dev/root 2>/dev/null || df -h | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -127,7 +127,6 @@ jobs: | |
| fetch-depth: 2 # default is 1 and codecov needs > 1 | ||
|
|
||
| - name: Remove unused applications | ||
| if: ${{ !matrix.container }} | ||
| uses: ./.github/actions/freediskspace | ||
|
|
||
| - name: Setup Environment | ||
|
|
@@ -217,6 +216,21 @@ jobs: | |
| build.binlog | ||
| if-no-files-found: ignore | ||
|
|
||
| - name: Free disk space before tests | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Bug: Cleanup action runs inside container, not on runnerThe condition |
||
| if: ${{ contains(matrix.container.image, 'alpine') }} | ||
| run: | | ||
| echo "Disk usage before cleanup:" | ||
| df -h | ||
|
|
||
| # Remove build binlog (can be large, often 100MB+) | ||
| rm -f build.binlog || true | ||
|
|
||
| # Clean up NuGet HTTP cache (not the packages cache which is needed for pack) | ||
| dotnet nuget locals http-cache --clear || true | ||
|
|
||
| echo "Disk usage after cleanup:" | ||
| df -h | ||
|
|
||
| - name: Test | ||
| run: dotnet test ${{ matrix.slnf }} -c Release --no-build --nologo -l GitHubActions -l "trx;LogFilePrefix=testresults_${{ runner.os }}" --collect "XPlat Code Coverage" | ||
|
|
||
|
|
||

Uh oh!
There was an error while loading. Please reload this page.