github-actions-typing
actionlint
github-actions-typing | actionlint | |
---|---|---|
4 | 5 | |
33 | 2,370 | |
- | - | |
8.0 | 9.5 | |
7 days ago | about 23 hours ago | |
Kotlin | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
github-actions-typing
- GitHub Actions could be so much better
- Bring type-safety to your GitHub actions' API!
- Typing for GitHub actions
-
GitHub Actions: a New Hope in YAML Wasteland
The one thing missing from the action.yml spec is the type of each input parameter. We are currently adding this information in our repository but it would be much better if it could live in your own repository in a action-types.yml file as some nice earlly adopters already do.
actionlint
-
GitHub Actions could be so much better
Yep, actionlint is great! I've used it successfully both to lint my own workflows, and to lint third-party workflows for (basic) security issues.
Unfortunately, it can't lint actions themselves, only workflows that call actions[1]. This is a substantial deficiency, especially for users (like me) who write and maintain a decent number of actions.
[1]: https://github.com/rhysd/actionlint/issues/46
-
What are the not-so-obvious tools that you don't want to miss?
I recently discovered actionlint and immediately told everyone that would listen about it. And now you are too. Static analysis for github actions, it's been pretty useful.
- Linter for GHA syntax?
-
GitHub Actions Pitfalls
The first pitfall can be statically detected with actionlint
https://github.com/rhysd/actionlint
$ actionlint oops.yaml
What are some alternatives?
github-workflows-kt - Authoring GitHub Actions workflows in Kotlin. You won't go back to YAML!
changed-files - :octocat: Github action to retrieve all (added, copied, modified, deleted, renamed, type changed, unmerged, unknown) files and directories.
ghtool - A command-line tool for interacting with Github API with some specialized features oriented around Checks
combine-prs-workflow - Combine/group together PRs (for example from Dependabot and similar services)
azure-pipelines-agent - Azure Pipelines Agent 🚀
gh-valet - Valet helps facilitate the migration of Azure DevOps, CircleCI, GitLab CI, Jenkins, and Travis CI pipelines to GitHub Actions.
ocurrent - Keeps things up-to-date (a CI/CD pipeline OCaml eDSL)
travis-yml - Travis CI build config processing
Concourse - Concourse is a container-based continuous thing-doer written in Go.
paths-filter - Conditionally run actions based on files modified by PR, feature branch or pushed commits
pipeline - A cloud-native Pipeline resource.
just - 🤖 Just a command runner