Redirect Geo git push operations to primary external URL
What does this MR do and why?
Instead of redirecting to the primary Geo internal URL in a git push operation, this now always redirects to the external URL.
This didn't work previously with internal URLs that were not public, or inaccessible to the regular users who may be pushing through a Geo secondary site.
Screenshots or screen recordings
╰─>$ git push -u origin
Username for 'http://p.geo-3k.cat': root
Password for 'http://root@p.geo-3k.cat':
warning: redirecting to http://p.geo-3k.cat/-/push_from_secondary/2/root/proj1.git/
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Writing objects: 100% (3/3), 252 bytes | 252.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
remote:
remote: This request to a Geo secondary node will be forwarded to the
remote: Geo primary node:
remote:
remote: http://p.geo-3k.cat/root/proj1.git
remote:
remote:
To http://p.geo-3k.cat/root/proj1.git
e2c4a90..103fac2 main -> main
Branch 'main' set up to track remote branch 'main' from 'origin'.
(before, the redirect was to http://35.*.*.*/..
(primary internal URL set)
How to set up and validate locally
- Have a local GDK with Geo set up
- On the primary, set a different internal URL (for example, if you use
gdk.test
with a dummy interface as in the GDK docs, usehttp://172.16.123.1
or the IP you've used for the dummy interface) - Clone and push to a repo on the secondary GDK, notice the redirect to the internal IP
- Checkout this branch, observe that cloning and pushing redirect to the external URL as expected
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Merge request reports
Activity
changed milestone to %14.4
assigned to @cat
- Resolved by Michael Kozono
- A deleted user
added backend label
Reviewer roulette
Changes that require review have been detected!
Please refer to the table below for assigning reviewers and maintainers suggested by Danger in the specified category:
Category Reviewer Maintainer backend Pavel Shutsin ( @pshutsin
) (UTC+2)Kerri Miller ( @kerrizor
) (UTC-7)To spread load more evenly across eligible reviewers, Danger has picked a candidate for each review slot, based on their timezone. Feel free to override these selections if you think someone else would be better-suited or use the GitLab Review Workload Dashboard to find other available reviewers.
To read more on how to use the reviewer roulette, please take a look at the Engineering workflow and code review guidelines. Please consider assigning a reviewer or maintainer who is a domain expert in the area of the merge request.
Once you've decided who will review this merge request, assign them as a reviewer! Danger does not automatically notify them for you.
If needed, you can retry the
danger-review
job that generated this comment.Generated by
Danger- Resolved by Michael Kozono
@vsizov
- would you mind reviewing this small change?
requested review from @vsizov
@vsizov
, thanks for approving this merge request.This is the first time the merge request is approved. To ensure full test coverage, a new pipeline has been started.
For more info, please refer to the following links:
requested review from @mkozono
mentioned in merge request !71732 (merged)
mentioned in issue #341767 (closed)
enabled an automatic merge when the pipeline for 9734d3b8 succeeds
mentioned in commit 17310da1
added workflowstaging-canary label
added workflowstaging label and removed workflowstaging-canary label
added workflowcanary label and removed workflowstaging label
added workflowproduction label and removed workflowcanary label
added releasedcandidate label
mentioned in merge request kubitus-project/kubitus-installer!306 (merged)
added releasedpublished label and removed releasedcandidate label