-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
--tag-only CLI option (without posargs) #3
Comments
In general, commit hashes should always be used as they are immutable compared to tags, and so the pins represent a stronger guarantee against unexpected change. The tag is still added as a comment for easy reference. There is a |
I'm in the "let things break in CI" team. More seriously, I prefer using tags because some actions update their major tags to point to latest ones (v1.2.3 released -> v1 updated to point to v1.2.3). That means less maintenance for me, as I don't have to think about updating these tags often. I don't really need immutability / reproducibility. Same for Python dependencies, I don't track or even generate lock files, I just resolve and install everything in one-go.
I'm aware of this option, but it's a bit cumbersome to have to modify my pyproject.toml temporarily to run |
I'll still add the usual "we're responsible adults" in favor of some wildcard functionality 😄 |
GitHub Actions is not a static platform. The base images updates regularly, and those updates are often why patch releases of actions are made, especially official actions. For example, they updated the version of Powershell on all the images, which broke cibuildwheel's action. We released (IIRC) The official actions (
I generally only use the hashed style for parts were security is important, like the artifact action, and for actions I'm not as sure will be stable as official or very well developed actions, and use the moving tag for actions that recommend it. What I'd really like is for I'd actually really like to have the option to move to I'd also be (slightly less) happy with a way to opt out of this change instead of a way to opt-in. I'd not call it "tag-only" though, as I'd expect to to preserve the styles per usage. |
Download/upload just broke compatibility in a patch by changing how The OSSF Scorecard requires pinning Actions by hash https://github.com/ossf/scorecard/blob/main/docs/checks.md#pinned-dependencies. While the scorecard has its problems, I don't think this is one of them. You pin your dependencies for stability. You update at a frequency that is appropriate for your project. How you pin shouldn't affect how often you check for updates. |
Yes, but my point is that you can't pin the runners or the APIs the actions talk to (like setup-python talking to python-versions), and they can and do break pinned actions. A minor or patch release can break unpinned actions, but a runner update can break pinned actions. I'd just like "gha-update" to work with both styles, rather than forcibly changing everything to one without asking it to. I'd settle for a way to opt-out of the change, though keeping the status-quo if not asked seems nicer. |
It would be nice to have support for keeping the branch-based version streams too. My actions have rolling pointers like |
I'm not sure it's best practice but I currently prefer using tag names rather than commit hashes, and would like to do that for every action appearing in my workflow files, not just specific ones. Therefore I would greatly enjoy a
--tag-only
CLI option that doesn't require additional positional args (action names) 😄 Nice project!The text was updated successfully, but these errors were encountered: