Infer artifacts-server from internalGitlabServerFromFlags() unless it's set explicitly
Summary
We have a lot of config options pointing to the gitlab server. We use them for different reasons:
- getting domain information
- redirecting to authentication
- fetching OAuth token
- proxying artifacts
In the simplest case, it should be possible to infer all of them from a single URL.
Note:
- some of these URL work in the
internal
network (e.g. OAuth token, gitlab domain information) - while others should be public(e.g. OAuth redirects), because we can redirect the user to this URL
So we should have at least 2 parameters:
gitlab-server
gitlab-internal-server
And all of the rest can be inferred from this.
Right now artifacts-server
should always be set in the config, I suggest we infer if from internalGitlabServerFromFlags()
unless it's set.
Optional: mark artifacts-server
as deprecated an remove it on the next major release.
Implementation details
func artifactsServerFromFlags() string {
if *artifactsServer != "" {
return *artifactsServer
}
return internalGitlabServerFromFlags() + "/api/v4"
}
Edited by Vladimir Shushlin