From b64b3998e58ebd53d882fe38fe85722bab874cbd Mon Sep 17 00:00:00 2001 From: Daniel J Walsh Date: Tue, 8 Oct 2024 14:16:20 -0400 Subject: [PATCH] Free up space on github runners Signed-off-by: Daniel J Walsh --- .github/workflows/ci.yml | 36 ++++++++++++++++++++ .github/workflows/latest.yml | 64 +++++++++++++++++++++++++++++++++++ .github/workflows/nightly.yml | 27 +++++++++++++++ 3 files changed, 127 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bab6493c..48827727 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,6 +11,42 @@ jobs: sudo apt-get update sudo apt-get install bats bash codespell python3-argcomplete make install-requirements + - name: Print disk space before cleanup + shell: bash + run: | + df -h + - name: Free Disk Space Linux + shell: bash + run: | + sudo docker rmi "$(docker image ls -aq)" >/dev/null 2>&1 || true + sudo rm -rf \ + /usr/share/dotnet /usr/local/lib/android /opt/ghc \ + /usr/local/share/powershell /usr/share/swift /usr/local/.ghcup \ + /usr/lib/jvm || true + sudo apt install aptitude -y >/dev/null 2>&1 + sudo aptitude purge '~n ^mysql' -f -y >/dev/null 2>&1 + sudo aptitude purge '~n ^dotnet' -f -y >/dev/null 2>&1 + sudo apt-get autoremove -y >/dev/null 2>&1 + sudo apt-get autoclean -y >/dev/null 2>&1 + + # /mnt has ~ 65 GB free disk space. / is too small. + - name: Reconfigure Docker data-root + run: | + sudo mkdir -p /mnt/docker /etc/docker + echo '{"data-root": "/mnt/docker"}' > /tmp/daemon.json + sudo mv /tmp/daemon.json /etc/docker/daemon.json + cat /etc/docker/daemon.json + sudo systemctl restart docker.service + df -h + + - name: Docker info + run: docker info + + - name: Print disk space after cleanup + shell: bash + run: | + df -h + - name: run test run: | make validate diff --git a/.github/workflows/latest.yml b/.github/workflows/latest.yml index ab9a4953..17e5d348 100644 --- a/.github/workflows/latest.yml +++ b/.github/workflows/latest.yml @@ -9,6 +9,38 @@ jobs: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 + - name: Free Disk Space Linux + shell: bash + run: | + sudo docker rmi "$(docker image ls -aq)" >/dev/null 2>&1 || true + sudo rm -rf \ + /usr/share/dotnet /usr/local/lib/android /opt/ghc \ + /usr/local/share/powershell /usr/share/swift /usr/local/.ghcup \ + /usr/lib/jvm || true + sudo apt install aptitude -y >/dev/null 2>&1 + sudo aptitude purge '~n ^mysql' -f -y >/dev/null 2>&1 + sudo aptitude purge '~n ^dotnet' -f -y >/dev/null 2>&1 + sudo apt-get autoremove -y >/dev/null 2>&1 + sudo apt-get autoclean -y >/dev/null 2>&1 + + # /mnt has ~ 65 GB free disk space. / is too small. + - name: Reconfigure Docker data-root + run: | + set -e + sudo mkdir -p /mnt/docker /etc/docker + echo '{"data-root": "/mnt/docker"}' > /tmp/daemon.json + sudo mv /tmp/daemon.json /etc/docker/daemon.json + sudo systemctl restart docker.service + df -h + + - name: Docker info + run: docker info + + - name: Print disk space after cleanup + shell: bash + run: | + df -h + - name: Run a one-line script run: make test @@ -31,6 +63,38 @@ jobs: with: ref: 's' + - name: Free Disk Space Linux + shell: bash + run: | + sudo docker rmi "$(docker image ls -aq)" >/dev/null 2>&1 || true + sudo rm -rf \ + /usr/share/dotnet /usr/local/lib/android /opt/ghc \ + /usr/local/share/powershell /usr/share/swift /usr/local/.ghcup \ + /usr/lib/jvm || true + sudo apt install aptitude -y >/dev/null 2>&1 + sudo aptitude purge '~n ^mysql' -f -y >/dev/null 2>&1 + sudo aptitude purge '~n ^dotnet' -f -y >/dev/null 2>&1 + sudo apt-get autoremove -y >/dev/null 2>&1 + sudo apt-get autoclean -y >/dev/null 2>&1 + + # /mnt has ~ 65 GB free disk space. / is too small. + - name: Reconfigure Docker data-root + run: | + set -e + sudo mkdir -p /mnt/docker /etc/docker + echo '{"data-root": "/mnt/docker"}' > /tmp/daemon.json + sudo mv /tmp/daemon.json /etc/docker/daemon.json + sudo systemctl restart docker.service + df -h + + - name: Docker info + run: docker info + + - name: Print disk space after cleanup + shell: bash + run: | + df -h + - name: install qemu-user-static run: | sudo apt-get update diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index d2d7f2c8..e468d388 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -9,6 +9,33 @@ jobs: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 + - name: Free Disk Space Linux + shell: bash + run: | + sudo docker rmi "$(docker image ls -aq)" >/dev/null 2>&1 || true + sudo rm -rf \ + /usr/share/dotnet /usr/local/lib/android /opt/ghc \ + /usr/local/share/powershell /usr/share/swift /usr/local/.ghcup \ + /usr/lib/jvm || true + sudo apt install aptitude -y >/dev/null 2>&1 + sudo aptitude purge '~n ^mysql' -f -y >/dev/null 2>&1 + sudo aptitude purge '~n ^dotnet' -f -y >/dev/null 2>&1 + sudo apt-get autoremove -y >/dev/null 2>&1 + sudo apt-get autoclean -y >/dev/null 2>&1 + + # /mnt has ~ 65 GB free disk space. / is too small. + - name: Reconfigure Docker data-root + run: | + set -e + sudo mkdir -p /mnt/docker /etc/docker + echo '{"data-root": "/mnt/docker"}' > /tmp/daemon.json + sudo mv /tmp/daemon.json /etc/docker/daemon.json + sudo systemctl restart docker.service + df -h + + - name: Docker info + run: docker info + - name: Run a one-line script run: make test