-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make the Github-URL for fetching dependeny changelogs configurable #12042
Comments
Can you show a before/after example of the URLs? |
Before: https://github.com/mapstruct/mapstruct Of course the "mapstruct/mapstruct" part is just an example for a dependency on github. |
So there's a dedicated proxyurl host which only proxies GitHub.com? Or is there a path prefix not shown in your example? |
"https://github.com" is the part of the URL that should be configurable. Otherwise fetching changelogs is not possible due to network restrictions. In our case, our gitlab instance is not allowed to access external services like github. We have to use an internal proxy therefore. (We do the same for the npm-registry, in this case renovate supports custom registries which solves the problem). I guess others have the same problem and need to set fetchReleaseNotes to false in this case, but thats no soluation. |
And you can't use a HTTPS_PROXY? |
To chime in, @rarkins: we have a similar use-case, except it's not Nexus we're using. In our case, perhaps similarly to @dprilmueller's, we cannot use a In our case the URLs look something like Alternatively, we'd need to look closer into "solving" the problem of missing |
Does your alternative URL support the full API of GitHub.com? As in it's essentially a full transparent proxy? |
Yes and no: in terms of making simple reading-based requests, I'd say yes. In terms of altering any content or pushing any updates, I'm not sure: I've never tried to EDIT: We do have some API gateways too that can work as fully transparent proxies if need be. The service we use is Artifactory, which is similar to Nexus. We point all of our internal |
You'd need token authentication for github.com too, otherwise you'd hit rate limiting very quickly. How is that handled? |
Artifactory handles that on its side; we configure Artifactory to use the specified token for communication with github.com. If multiple teams need access to the extent that we need multiple tokens, we could/would create If it's a straightforward |
We could potentially solve this with a new config option as part of hostRules, e.g. called Can someone give a more concrete example, for example what would the URL And do you have a separate proxy endpoint for |
The URL would be replaced with something like: Yes, if renovate also accesses https://github.com (not only api.github.com) we need a seperate proxy endpoint for that as well. |
So the new option could be called It would be somewhat similar to renovate/lib/datasource/docker/common.ts Lines 252 to 254 in 4b16903
Maybe also needs some code changes made so that we don't automatically disable github.com changelog lookups when a github.com token is not found (although you could potentially just configure a dummy token which will never be used). I'm marking this as "status:ready" but it will need a community contribution from someone who needs this.. including because it should be tested in a real environment before merge. |
What would you like Renovate to be able to do?
I would like to make use of the Github.com changelog fetching feature in a gitlab-renovate-runner project.
The problem is, that direct access to the internet is not possible. Instead all requests have to be proxied via nexus.
To make this possible, a custom base-url for the changelog requests would be an option.
Current state when fetching changelog for dependency mapstruct for example:
Fetching changelog: https://github.com/mapstruct/mapstruct (1.4.0.Final -> 1.4.2.Final) (repository=***/rvs-node-dependency-upgrades-poc)
"url": "https://api.github.com/repos/mapstruct/mapstruct/tags?per_page=100",
The github.com part (and/or the api.github.com?) would be replaced with the proxy-url.
If you have any ideas on how this should be implemented, please tell us here.
Is this a feature you are interested in implementing yourself?
No
The text was updated successfully, but these errors were encountered: