Repository storage in a bucket: the hub as a client of the owner's store (B3, B4) issue #96 closed: completed andymccall opened this · 1 comment
referenced by 2 changes on 5 Oct 2026
andymccall
Done: a repository can live in its owner's S3, GCS or Azure bucket from the New repository form, an organisation's Settings › Storage can require it and list the allowed buckets, and bucket repositories were made fast (issue #228, issue #234, oxygen#116). doomsdayone/tetris runs this way on GCS. Keyless access carries on in issue #122.
andymccall closed ·
After oxygen's Repo-over-Store (B1, B2): each repository names its store (hub disk, or an S3/GCS/Azure bucket with credentials encrypted at rest), the hub opens it through the Store trait with a local cache, locks and gc go through the bucket's compare-and-swap. A ref moved outside the hub (a direct push to the bucket) shows in the push log as updated outside the hub and runs Flow if the repository asks.
Pages: the New repository form gets a Storage section (hub disk, or a bucket with provider-specific fields); Settings → Storage with a Check button (the conformance suite) and Sync status; the overview says where the data lives; an organisation storage policy can require a bucket in a region for every new repository. Refs the oxygen issue.