Fallout-build / Fallout-build/Fallout.Extensions.VSCode
Purge a pull request's Actions caches when it closes
- Langage dominant
- C#
- Étoiles
- 0
- Forks
- 0
- Merge moyen
- 2 h 43 min
- PR mergées (30 j)
- 8
Description
### Problem
Actions caches created for a pull request are never deleted when that pull request closes. On 2026-08-19 this repository held 15 caches of about 209 MB each, roughly 3.1 GB. Every one of them belonged to a pull request that was already merged or closed, and all 15 shared the same cache key. Each repository on the Free plan gets 10 GB of cache. Filling it wastes the allowance and produces billing alert emails for the organisation.
### Outcome
When a pull request closes, the caches that belong only to that pull request are deleted automatically. No manual cleanup is needed.
### Acceptance criteria
- [ ] A workflow runs on `pull_request` with `types: [closed]`.
- [ ] It deletes every cache whose `ref` is `refs/pull//merge` for the pull request that just closed.
- [ ] It uses the built-in `GITHUB_TOKEN` with `permissions: actions: write`, not a personal access token.
- [ ] The run succeeds when the pull request has no caches.
- [ ] Caches on branch refs such as `refs/heads/main` and `refs/heads/develop` are not touched.
### Notes
- The 15 caches were deleted by hand on 2026-08-19.
- Because all 15 shared one cache key, each pull request stored a full copy of the same content. Worth checking whether the cache key needs to include the pull request ref at all.
- List caches with `GET /repos/{owner}/{repo}/actions/caches`, delete with `DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}`.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par la configuration du workflow GitHub Actions du dépôt et les endpoints de cache documentés : GET /repos/{owner}/{repo}/actions/caches et DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}. Vérifiez que le workflow gère l’événement pull_request closed, utilise GITHUB_TOKEN avec actions: write, supprime uniquement les caches refs/pull//merge correspondants et réussit lorsqu’il n’en existe aucun.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- github, github-actions
- Domaine
- ci-cd
- Type d'issue
- Fonctionnalité
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- Active
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 76/100