forgejo/services
Earl Warren 0a5fd7fdb8
fix: referenced sha256:* container images may be deleted
The inventory of the sha256:* images and the manifest index that
reference them is incomplete because it does not take into account any
image older than the expiration limit. As a result some sha256:* will
be considered orphaned although they are referenced from a manifest
index that was created more recently than the expiration limit.

There must not be any filtering based on the creation time when
building the inventory. The expiration limit must only be taken into
account when deleting orphaned images: those that are more recent than
the expiration limit must not be deleted.

This limit is specially important because it protects against a race
between a cleanup task and an ongoing mirroring task. A mirroring
task (such as skopeo sync) will first upload sha256:* images and then
create the corresponding manifest index. If a cleanup races against
it, the sha256:* images that are not yet referenced will be deleted
without skopeo noticing and the published index manifest that happens
at a later time will contain references to non-existent images.
2024-09-30 16:56:21 +02:00
..
actions Fix actions notify bug (#31866) 2024-08-25 10:41:24 +02:00
agit fix(agit): run full pr checks on force-push 2024-08-12 09:00:41 +02:00
asymkey Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00
attachment Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00
auth Merge pull request '[CHORE] Move to new sessioner library' (#5090) from gusted/forgejo-sessioner-fork into forgejo 2024-08-26 07:31:56 +00:00
automerge Fix agit automerge (#31207) 2024-08-25 10:47:37 +02:00
context Refactor CSRF protector (#32057) (fix forgejo tests) 2024-09-27 08:42:48 +02:00
contexttest [TESTS] Fix usage of LoadRepoCommit 2024-08-26 08:03:48 +02:00
convert Fix /repos/{owner}/{repo}/pulls/{index}/files endpoint not populating previous_filename (#32017) 2024-09-14 17:53:55 +02:00
cron Clear up old Actions logs (#31735) 2024-08-04 18:24:10 +02:00
doctor fix: correct doctor commands and rename to forgejo 2024-08-27 02:40:55 +02:00
externalaccount
f3 feat: upgrade F3 to v3.7.0 2024-08-18 19:39:20 +02:00
federation feat: access ActivityPub client through interfaces to facilitate mocking in unit tests (#4853) 2024-08-07 05:45:24 +00:00
feed Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00
forgejo Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00
forms [FEAT] Allow pushmirror to use publickey authentication 2024-08-22 17:05:07 +02:00
gitdiff feat: Improve diff being generated 2024-08-26 13:58:17 +02:00
indexer
issue [BUG] Don't fire notification for comment of pending review 2024-08-18 17:04:00 +02:00
lfs feat(quota): Quota enforcement 2024-08-02 11:10:34 +02:00
mailer chore: remove extra go-sqlite3 imports 2024-09-06 09:36:08 +00:00
markup Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00
migrations Support allowed hosts for migrations to work with proxy (#32025) 2024-09-14 17:52:54 +02:00
mirror [FEAT] Allow pushmirror to use publickey authentication 2024-08-22 17:05:07 +02:00
notify
org Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00
packages fix: referenced sha256:* container images may be deleted 2024-09-30 16:56:21 +02:00
pull Handle "close" actionable references for manual merges (#31879) 2024-09-01 08:07:27 +02:00
release Handle invalid target when creating releases using API (#31841) 2024-09-14 18:45:18 +02:00
remote
repository Fix: database not updated when using git push --tags --force (#5319) 2024-09-22 07:35:25 +00:00
secrets
task feat(quota): Quota enforcement 2024-08-02 11:10:34 +02:00
uinotification
user Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00
webhook Support allowed hosts for migrations to work with proxy (#32025) 2024-09-14 17:52:54 +02:00
wiki Add testifylint to lint checks (#4535) 2024-07-30 19:41:10 +00:00