fix(caddy): закрыть генерацию архивов Forgejo — она съедала диск #3534
No reviewers
Labels
No labels
Fable 5 ревью
GG-форсайт
admin
analytics
auth
automation
bug
business
chore
ci
compliance
data
data-moat
docs
duplicate
dx
enhancement
feedback/max
generative
needs-discussion
needs-human
observability
pause-bots
performance
priority/p0
priority/p1
priority/p2
priority/p3
scope/backend
scope/db
scope/devops
scope/frontend
scope/qa
scrapers
security
site-finder
stage/1
stage/2
status/blocked
status/done
status/needs-analysis
status/needs-fix
status/qa
status/ready
status/review
status/wip
tech-debt
tradein
ux
week ревью 1
wontfix
ИРД
вторичка
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lekss361/gendesign#3534
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "fix/forgejo-archive-crawler"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Что происходит
Диск на Beget заполнен на 84 процента, свободно 25 ГБ из 145 ГБ. Расход измерен контрольным
dfза 120 секунд: 2 ГБ в час. До нуля оставалось около 12 часов.Заполняет его кэш архивов Forgejo:
repo-archiveРепозиторий публичный, и внешний обходчик дёргает ссылку «скачать архив» для каждого коммита. Forgejo на каждый такой GET пересобирает снапшот репозитория заново, по 20-30 МБ и несколько секунд CPU, и кладёт результат в кэш. Штатная уборка
archive_cleanupработает, но раз в сутки, а генерация идёт около сотни файлов в час. Кэш вышел на плато и продолжает есть остаток диска.Почему отказ, а не ограничение скорости
Даже один запрос в минуту — это 30 МБ новых файлов в минуту при суточной уборке. Ограничение скорости замедлило бы рост, но не остановило.
Что ломается
Анонимная кнопка «скачать архив» в веб-интерфейсе. Всё остальное не задето:
git clone,git fetchи работа CI идут по смарт-протоколу, это другие пути (/info/refs,/git-upload-pack).Обратимо снятием двух правил.
Проверка
caddy validate --config infra.caddy --adapter caddyfile→Valid configuration.После деплоя: обращение к архиву должно отдавать 403,
git cloneработать, рост кэша прекратиться. Сам кэш чистится отдельно, после этой правки.🤖 Generated with Claude Code
https://claude.ai/code/session_01JY6iWDnGDthdvsMWgK1BMG