-
Notifications
You must be signed in to change notification settings - Fork 113
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
Use imjasonh/setup-ko GitHub Action #747
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cool stuff
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: qu1queee The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@imjasonh from a security pov, and I am fully trusting you, but, I think that actions preferable should be in some common org where some review is happening to ensure that secrets are not leaked eventually. Current action imports are from actions, azure, helm and docker which is I think where somebody has an eye on.
I am not fully knowing the versioning schema when consuming these actions, but I think v0.3
would allow you to make updates. The document suggests to reference by sha to make sure that code is not getting changed.
Maybe worth a quick discussion on how we want to consume actions from personal accounts. Imo we need some rules there. Holding PR for now.
/hold
@SaschaSchwarze0 That's an entirely reasonable concern. I'm fine with pinning it to a specific commit, if that's what you'd prefer. I'm also fine with copying the action into shipwright-io if we think that's appropriate, so any changes get reviewed; that feels a bit like overkill to me, but I'd be willing to consider it. However we pin or version the action definition, it'll still install the floating latest |
In my opinion, referencing the action version by SHA is what we need to do. I am okay that the action installs the latest ko release because ko is backed by a community. I do not think it makes sense to copy the action into the shipwright organization, it does not really belong there. From my perspective it would rather make more sense if you contribute it to the ko community. And just to make sure I am not misunderstood: I was holding this PR not because of lacking trust in you. Instead, I think that referencing third-party dependencies (programming libraries, base images, or github actions) generally is becoming a more and more relevant threat in our business. Be it that dependencies disappear from one day to the next one (like left-pad) or that repositories get hacked and malicious code injected (like event-stream. |
I'd prefer to do that too (I originally proposed it in ko-build/ko#347, removed in ko-build/ko#352), but Google apparently hasn't accepted GitHub's Marketplace Terms of Service so you can't publish actions from the github.com/google org. If "the ko community" existed outside of the google org it would be a possibility, and a high likelihood. But that's a larger topic.
Oh don't worry, there's no misunderstanding, and no offense interpreted on my part. It's good and healthy to be skeptical of these sorts of dependencies. There's also the Bus Factor to consider 😆 🚌 I'll update the PR to reference by SHA, and if anybody else has any comments/concerns we can address them. Thanks for your feedback, and for wanting to do this securely and reliably. 👍 |
See https://github.com/imjasonh/setup-ko This action installs the latest `ko` release, so we don't need to bump the version ourselves every time there's a release. We can also pin to a ko release if we want to, to avoid a breakage or bad version. Referencing the action by SHA (equivalent to v0.3) to avoid silent behavior changes and breakages.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
/unhold
Is this discussion something we should move to the community meeting?, mainly because of the following aspects:
|
Sure, I've added it to the agenda. If we decide it doesn't make sense to depend on this, I'm fine reverting this change. |
See https://github.com/imjasonh/setup-ko
This action installs the latest
ko
release, so we don't need to bumpthe version ourselves every time there's a release.
We can also pin to a ko release if we want to, to avoid a breakage or
bad version.
/kind cleanup
Submitter Checklist
See the contributor guide
for details on coding conventions, github and prow interactions, and the code review process.
Release Notes