gitlab-ci-local
actionlint
gitlab-ci-local | actionlint | |
---|---|---|
10 | 5 | |
1,862 | 2,361 | |
- | - | |
9.1 | 9.5 | |
7 days ago | 5 days ago | |
TypeScript | Go | |
MIT License | 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.
gitlab-ci-local
-
🦊 GitLab CI YAML Modifications: Tackling the Feedback Loop Problem
Among these options, the one that has gained the most traction is gitlab-ci-local :
-
🦊 GitLab CI: 10+ Best Practices to Avoid Widespread Anti-patterns
The main reason behind this change is to have consistent scripts for local testing and remote runners during testing and debugging. However, there are already tools available, such as gitlab-ci-local, that allow you to run jobs locally, partially invalidating this argument. Additionally, working locally may not provide access to all necessary variables.
- GitHub Actions could be so much better
-
How do you debug CI/CD pipelines? Breakpoints?
Two tools I've used for local Gitlab CI runs: - https://github.com/firecow/gitlab-ci-local - https://gitlab.com/AdrianDC/gitlabci-local
-
makefiles in stages
What you might want to look at is this, to meet both needs https://github.com/firecow/gitlab-ci-local
-
Looking for a way to test CI pipeline (gitlab) locally
https://github.com/firecow/gitlab-ci-local exists but its not quite there yet. Personally Ive resorted to setting up a self-managed instance at home, relying on the included linter/validator and pushing repeatedly as before.
-
Selfhosted Gitlab for CI only
If you already have/had a working pipeline then maybe https://github.com/firecow/gitlab-ci-local has something worth looking at.
-
The End of CI
> One thing that would be nice, however, would be the ability to run the entire pipeline locally.
This cost me many hours of waiting for the Gitlab CI runner when debugging non-trivial pipelines, when the issue was something that did not have to do with the script steps inside of the jobs but rather how the Gitlab runner handled things.
I've found gitlab-ci-local [1] which actually does run the Gitlab pipeline locally, although I had to write some boilerplaye scripts to set up all the necessary 'CI_FOO_SOMETHING' environment variables before running the tool. (Which sometimes came back to bite me because the issue was actually in the content of some of those environment variables). It's still a very good tool.
[1] https://github.com/firecow/gitlab-ci-local
-
How to develop CI pipeline effectively?
Most CI/CD tools let you run pipelines locally. Just one example: https://circleci.com/blog/using-runner-for-local-testing/ . In my opinion Gitlab and Circleci have the test tools for this.
- firecow/gitlab-ci-local : Tired of pushing to test your .gitlab-ci.yml?
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?
dagger - Application Delivery as Code that Runs Anywhere
changed-files - :octocat: Github action to retrieve all (added, copied, modified, deleted, renamed, type changed, unmerged, unknown) files and directories.
tekton-kickstarter - Templates, scripts and samples for quickly building CI/CD with Tekton.
combine-prs-workflow - Combine/group together PRs (for example from Dependabot and similar services)
act - Run your GitHub Actions locally 🚀
gh-valet - Valet helps facilitate the migration of Azure DevOps, CircleCI, GitLab CI, Jenkins, and Travis CI pipelines to GitHub Actions.
pypyr automation task runner - pypyr task-runner cli & api for automation pipelines. Automate anything by combining commands, different scripts in different languages & applications into one pipeline process.
travis-yml - Travis CI build config processing
action-tmate - Debug your GitHub Actions via SSH by using tmate to get access to the runner system itself.
paths-filter - Conditionally run actions based on files modified by PR, feature branch or pushed commits
goonstation - Repository for the Goonstation branch of SS13
just - 🤖 Just a command runner