4 ms·
While dealing with an unfamiliar project recently, being able to run actions locally with act[1] was a great time saver for me: [1] https://github.com/nektos/a
by natrys 5y ago
While dealing with an unfamiliar project recently, being able to run actions locally with act[1] was a great time saver for me:
[1] https://github.com/nektos/act https://github.com/nektos/act
- terhechte 5y agoThanks! I searched for something like this recently and couldn't find it! Should be linked in the Actions docs.
- thinkafterbef 5y agoIncoming shameless plug; if you don’t have to handle the hosting runners, but still to reap the benefits of having proper hardware (close to the metal). Check out BuildJet for GitHub actions[1] - 2x the speed for half the price. Easy to install and easy to revert. [1] https://buildjet.com/for-github-actions https://buildjet.com/for-github-actions
- Grimburger 5y ago
- naikrovek 5y agoI wrote a very small container orchestrator that spawns a runner container when it gets a webhook that a job was triggered. it spawns a runner container with the environment required to attach to the repo as an ephemeral runner, do the job, then detach the runner and exit the container. very fast. this was all before I knew about act and it's about the same speed in my limited testing.
- ebingdom 5y agoIf you're looking for a way to reproduce your CI locally that isn't tied to a particular CI system (but which has a nice integration with GitHub Actions), there's also Toast: https://github.com/stepchowfun/toast https://github.com/stepchowfun/toast Toast lets you use whatever base image you want (even when running with GitHub Actions), and it has some extra features for local development (e.g., caching, bind mounts, tasks with dependencies between them, etc.).
- 8n4vidtmkvmk 5y agohuh. this looks crazy similar to something i just started building, down to the yaml. except mine doesn't attempt to containerize.. i wonder how much overhead that adds
- thamer 5y agoI've mentioned this before on HN, but `act` was completely unusable for me when I tried it. Tons of errors that required digging deep into the code to understand, missing features… has it improved over time? It seems very useful and I gave it a solid try at the time (maybe a year ago), but just had to give up after a few hours. edit: I decided to upgrade and give it a try, went from 0.2.21 to 0.2.25 (Mar 30, 2021 → Nov 24, 2021). It's still failing to run a basic "build and test" pipeline, and really not doing anything fancy: apt-get install + make + ./service + ./tests.py, with a Redis sidecar. This seems to be because services are not supported in `act`: https://github.com/nektos/act/issues/173 https://github.com/nektos/act/issues/173