Make the offloading blobs PoC MR work with GCP.
POC expectations (Updated on 2023-04-18)
The POC can be perform on GDK, with modified Gitaly binary as the Gitaly backend. We are expecting to see:
- A user can use Rails command or Web UI of housekeeping to trigger the offloading process.
- On the server side, Gitaly will repack the repository based on the filter setup.
- On the server side, Gitaly will upload the large blob packs onto cloud storage (e.g GCP buckets).
- On the client side, the repo can be cloned, fully functional without missing objects.
- On the client side, offloaded packs are downloaded directly from cloud storage (not through gitaly server).
Some extra expectation if possible:
- A user can explore the large object on gitlab UI without downloading the blob. This require cat-file to be modified to recognize the offloaded objects and can streaming it metadata.
Edited by Eric Ju