Geo: Secondary sites proxy to primary site
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
*This page may contain information related to upcoming products, features and functionality.
It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes.
Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.*
<!-- triage-serverless v3 PLEASE DO NOT REMOVE THIS SECTION -->
### Summary
The first iteration of Geo's unified URL and proxying feature was shipped in GitLab 14.6 https://about.gitlab.com/releases/2021/12/22/gitlab-14-6-released/#seamless-worldwide-performance-with-geo We are now iterating further, by making improvements to the feature e.g. supporting separate URLs.
### Details
* Make Workhorse call `/internal/geo_proxy`.
* When it returns a `geo_proxy_url`, then switch to Geo-secondary-specific routing very similar to https://gitlab.com/gitlab-org/gitlab-workhorse/-/merge_requests/688/diffs.
* Do we need to cache this in Workhorse? => Yes
Note: Workhorse development happens in the main GitLab codebase now! :tada:
epic