diff --git a/.github/actions/runner-cleanup/action.yml b/.github/actions/runner-cleanup/action.yml new file mode 100644 index 0000000..fd25ad4 --- /dev/null +++ b/.github/actions/runner-cleanup/action.yml @@ -0,0 +1,24 @@ +name: Runner Cleanup +description: A GitHub Action for removing bloat from Ubuntu GitHub Actions runner. +author: Stefan Prodan +branding: + color: blue + icon: command +runs: + using: composite + steps: + - name: "Disk Usage Before Cleanup" + shell: bash + run: | + df -h + - name: "Remove .NET, Android and Haskell" + shell: bash + run: | + sudo rm -rf /usr/share/dotnet || true + sudo rm -rf /usr/local/lib/android || true + sudo rm -rf /opt/ghc || true + sudo rm -rf /usr/local/.ghcup || true + - name: "Disk Usage After Cleanup" + shell: bash + run: | + df -h diff --git a/.github/workflows/cve-scan.yml b/.github/workflows/cve-scan.yml index 9cb0727..edf681d 100644 --- a/.github/workflows/cve-scan.yml +++ b/.github/workflows/cve-scan.yml @@ -16,8 +16,10 @@ jobs: govulncheck: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v6 + - uses: actions/checkout@v6 + - uses: ./.github/actions/runner-cleanup - name: Vulnerability scan id: govulncheck uses: golang/govulncheck-action@v1 + with: + repo-checkout: false diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index c80e1d9..fb89b1f 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -15,6 +15,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v6 + - name: Disk Cleanup + uses: ./.github/actions/runner-cleanup - name: Setup Kubernetes uses: helm/kind-action@v1.13.0 with: @@ -47,8 +49,8 @@ jobs: PODINFO_MODULE_URL: "oci://localhost:5000/podinfo" PODINFO_VERSION: "0.0.0-devel" steps: - - name: Checkout - uses: actions/checkout@v6 + - uses: actions/checkout@v6 + - uses: ./.github/actions/runner-cleanup - name: Setup Timoni uses: stefanprodan/timoni/actions/setup@main - name: Setup Kubernetes diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6ca4ebe..5454e3b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,6 +17,7 @@ jobs: packages: write # needed for ghcr access steps: - uses: actions/checkout@v6 + - uses: ./.github/actions/runner-cleanup - uses: sigstore/cosign-installer@v4.0.0 with: cosign-release: v2.6.1 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3d26557..d1a91f9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -17,8 +17,8 @@ jobs: test: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v6 + - uses: actions/checkout@v6 + - uses: ./.github/actions/runner-cleanup - name: Setup Go uses: actions/setup-go@v6 with: