Runner Maintenance #27
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Runner Maintenance | |
| # Heavy disk reclamation for the self-hosted runner. Runs once per day at | |
| # 18:00 UTC (02:00 Asia/Shanghai) so it lands in an off-peak window. Per-PR | |
| # `gpu-smoke` jobs only attempt the heavier reclaim path when disk is under | |
| # pressure, and still rate-limit the expensive cache-trim pass via a | |
| # cooldown; this scheduled job forces the full cleanup pass on days with | |
| # little PR traffic. | |
| # | |
| # GPU smoke and nightly share the persistent cache tree under | |
| # `/data/cache/*`. | |
| on: | |
| schedule: | |
| - cron: "0 18 * * *" | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: runner-maintenance | |
| cancel-in-progress: false | |
| jobs: | |
| reclaim-disk: | |
| if: ${{ github.repository == 'MetaX-MACA/TileOPs-Metax' }} | |
| runs-on: tileops-metax-runner | |
| timeout-minutes: 60 | |
| steps: | |
| # Invoke the action directly via owner/repo/path@ref so this workflow | |
| # does not depend on `actions/checkout` succeeding first — in the | |
| # disk-full scenarios this job is meant to remediate, a prior checkout | |
| # could itself fail for lack of space and prevent reclaim from ever | |
| # running. `@main` is trusted because this workflow only triggers on | |
| # schedule / workflow_dispatch; no fork-PR code path reaches it. | |
| - name: Reclaim runner disk | |
| uses: MetaX-MACA/TileOPs-Metax/.github/actions/reclaim-runner-disk@dev | |
| with: | |
| force-reclaim: "true" |