Earlier quoted context omitted.
It's insane to me that being able to run CI steps locally is not the first priority of every CI system. It ought to be a basic requirement.
I've often thought about this. There are times I would rather have CI run locally, and use my PGP signature to add a git note to the commit. Something like: ``` echo "CI passed" | gpg2 --clearsign --output=- | git notes add -F- ``` Then CI could check git notes and check the dev signature, and skip the workflow/pipeline if correctly signed. With more local CI, the incentive may shift to buying devs fancier machines i…
I hate GitHub Actions with passion
291–300 of 347 posts
Re: I hate GitHub Actions with passion
#292Earlier quoted context omitted.
It's insane to me that being able to run CI steps locally is not the first priority of every CI system. It ought to be a basic requirement.
I've often thought about this. There are times I would rather have CI run locally, and use my PGP signature to add a git note to the commit. Something like: ``` echo "CI passed" | gpg2 --clearsign --output=- | git notes add -F- ``` Then CI could check git notes and check the dev signature, and skip the workflow/pipeline if correctly signed. With more local CI, the incentive may shift to buying devs fancier machines i…
Re: I hate GitHub Actions with passion
#293For those who have experience, how does github actions compare to azure devops pipelines?
Re: I hate GitHub Actions with passion
#294Earlier quoted context omitted.
I really like the SourceHut CI, because: 1. When the build fails, you can SSH into the machine and debug it from there. 2. You can super easily edit & run the manifest without having to push to a branch at all. That makes it super easy to even try a minimum reproducible example on the remote machine. Other than that, self-hosting (with Github or preferrably Forgejo) makes it easy to debug on the machine, but then you…
Self-hosted runners with Github is a whole world of pain because it literally just runs commands on the host and does not handle provisioning/cleanup, meaning you need to make sure your `docker run` commands don't leave any leftover state that can mess up future/concurrent builds. It doesn't even handle concurrency by itself, so you have to run multiple instances of the runner.
Re: I hate GitHub Actions with passion
#295Re: I hate GitHub Actions with passion
#296Earlier quoted context omitted.
https://github.com/nektos/act Lets you run your actions locally. I've had significant success with it for fast local feedback.
I tried this five years ago back when I was an engineer on the PyTorch project, and it didn't work well enough to be worth it. Has it improved since then?
Re: I hate GitHub Actions with passion
#297Ansible. Same reasons but 100x worse.
Re: I hate GitHub Actions with passion
#298I think this post accurately isolates the single main issue with GitHub Actions, i.e. the lack of a tight feedback loop. Pushing and waiting for completion on what's often a very simple failure mode is frustrating. Others have pointed out that there are architectural steps you can take to minimize this pain, like keeping all CI operations isolated within scripts that can be run locally (and treating GitHub Actions fe…
I’ve contemplated building my own CI tool (with a local runner) and the thing is if you assume “write a pipeline that runs locally but also on push”, then the feature depth is mostly about queuing, analyzing output, and often left off, but IMO important, charting telemetry about the build history. Most of these are off the shelf, at least in some programming languages. It’s the integrations and the overmanagement whe…
Re: I hate GitHub Actions with passion
#299Earlier quoted context omitted.
I tried this five years ago back when I was an engineer on the PyTorch project, and it didn't work well enough to be worth it. Has it improved since then?
It works well enough that I didn’t realize this wasn’t first party till right now.
Re: I hate GitHub Actions with passion
#300I think this post accurately isolates the single main issue with GitHub Actions, i.e. the lack of a tight feedback loop. Pushing and waiting for completion on what's often a very simple failure mode is frustrating. Others have pointed out that there are architectural steps you can take to minimize this pain, like keeping all CI operations isolated within scripts that can be run locally (and treating GitHub Actions fe…
https://github.com/nektos/act Lets you run your actions locally. I've had significant success with it for fast local feedback.