Hetzner E2E Reaper #50
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: Hetzner E2E Reaper | |
| # Belt-and-suspenders cleanup. Runs every 30 minutes and deletes any | |
| # `ci=true,workflow=hetzner-e2e` servers older than 60 minutes — in | |
| # case a crashed workflow leaks one. Gracefully no-ops when | |
| # HCLOUD_TOKEN_CI isn't set so it doesn't spam-fail before secrets | |
| # are configured. | |
| on: | |
| schedule: | |
| - cron: '*/30 * * * *' | |
| workflow_dispatch: | |
| concurrency: | |
| group: hetzner-e2e-reaper | |
| cancel-in-progress: false | |
| # Default to least privilege. Override per-job where needed. | |
| permissions: | |
| contents: read | |
| jobs: | |
| reap: | |
| name: Sweep stale CI servers | |
| runs-on: ubuntu-latest | |
| environment: ci-hetzner-e2e | |
| timeout-minutes: 10 | |
| env: | |
| HCLOUD_TOKEN_CI: ${{ secrets.HCLOUD_TOKEN_CI }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: 1.3.13 | |
| - name: Install dependencies | |
| run: bun install --ignore-scripts | |
| - name: Reap | |
| run: bun run packages/scripts/cloud/admin/hetzner-e2e/hetzner-e2e-reaper.ts |