Maven package registry, switch S3 HEAD support from local to global
🔥 Problem
In !27612 (merged), we patched a bug for the Maven Repository: HEAD
requests with an AWS S3 object storage didn't work (due to a signature mismatch).
At that time, we patched the Maven Repository locally.
After 2 years+ of being implemented, we can consider the fix as stable and thus "promote" it into the file download helper function so that all (for all APIs) file download endpoints are patched.
That's what !106242 (merged) is doing.
🚒 Solution
For the Maven Repository, we will need to switch from:
- a local patch to
- use the regular file download helper function (that contains the
HEAD
requests support)
Now, this only impacts self-managed users as gitlab.com runs on Google Cloud Storage (and not AWS S3).
Still this change can break the Maven Repository file download endpoints and that could break important user flows.
As such, we need to use a feature flag for this switch. Moreover, since self-managed users are only impacted, we will need to release this switch with the default enabled feature flag.
Once, the change seems stable (for example, waiting a full milestone), remove the feature flag.