-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Support private registries for github-actions #6015
Comments
Hei! Indeed Let me know how that works! |
The That also seems like a lot of additional configuration to have to hardcode the URL of the GHES appliance itself running the jobs into every single step of every single workflow in the whole Enterprise when it otherwise Just Works™️ as a built-in feature. |
Sorry, I didn't explain why I mean correctly. I meant that you should be able to configure a git registry for your GHES instance. |
Yeah … I am firmly with @martincostello in spirit. A good user (developer) experience looks way different from is proposed here. The Git repository declaration may be useful as workaround for now but – within a GHES environment – having to constantly work around weird edge cases in Dependabot limitations (see for example #1884, #1959) is really frustrating. Especially because Dependabot is supposed to be a first party product as in "part of the GitHub experience". |
Just trying to help here, apologies if my suggestions don't fulfill your expectations. Please help me understand what's being requested here. Is it to, instead of writing
be able to write
? |
The built-in Dependabot integration for GHES already doesn't need to be configured with authentication for cloning repositories or raising pull requests, so I wouldn't expect to need to tell it how to authenticate with the GHES appliance itself and could discover for itself whether fetching GitHub Actions from the internet is allowed at all. Ideally, something as minimal as this if Dependabot needs to be told it isn't running in the context of github.com, but given the first-party integration, I would expect it to be able to find out for itself that it wasn't running in "the" GitHub and act accordingly: registries:
github-octocat:
type: github-actions
url: https://github.corp.local |
Ok! I completely lack experience on GHES so let me check with the rest of the team and I'll get back 👍. |
I understand – and any workaround is better than none. I am terribly sorry about my comment being overly aggressive, it was not meant as an (personal) attack. I very much welcome any feedback here and thank you for attempting to provide a workaround. |
We tested exactly that, added a registry of type |
Apparently the workaround has also recently regressed, as per #6140. So, no, you're not doing anything wrong, it's us. I'll try find some time to look into this, sorry for the inconveniences! |
IIUC, you're wanting the GHES appliance to prefer itself as the source of the action. This was actually added in GHES 3.7 by #5469. However, we later discovered a bug which was fixed by #6512 and released last week. So if you fetch the latest version of the Dependabot action for your GHES instance, this should work as desired. I'm going to close because I think this is now handled, but if you're still encountering problems even after upgrading please comment and we can re-open. |
Thanks a lot!
update: it seems to work when updating built-in actions that are synchronized to our GHE instance (e.g. actions/setup-java). But not when I reference an action that just exists in our instance. |
@MoritzKeppler if you could provide a bit more info about the local only action? I'm trying to put together a list of gaps in our actions support so we can tackle them. Is this a reusable workflow or is it a full fledged action in a private repo? If you could provide a representative "uses" setting from the workflow for this action. Anonymized is fine, but having all of the path segments included in the real "uses" setting. We use a regex to find/parse the action names and I suspect the update is failing because this regex is too specific. |
Sure, it's a 'full fledged' action with two release "v1.0.0" and "v1.0.1"
|
Is there an existing issue for this?
Feature description
When using dependabot with GitHub Enterprise server where using Actions from github.com is disallowed, dependabot will raise pull requests to update actions to versions that are not available in the appliance.
As a concrete example, GitHub Enterprise Server 3.6 is bundled with actions/setup-dotnet v2 but the current latest version on github.com is v3.
Within GHES, dependabot will generate a pull request to bump a reference to v2 of this action to v3, which will then break because that version is not available in the appliance.
Configuring
dependabot.yml
to point to GHES for actions updates isn't possible asgithub-actions
is not a supported value for thetype
property of a private registry underregistries
(docs).At a minimum, dependabot should support private registries for
github-actions
so that enterprise-level actions can be correctly kept up-to-date.Ideally, dependabot when run within GHES would be able to determine for itself whether public actions are allowed or not, and use the correct GitHub host to determine the latest actions versions that are available of its own accord without manual configuration.
The text was updated successfully, but these errors were encountered: