3 ms·
I really like that with GitLab you can run the CI script in a local container to debug things and then only commit and push once it's working.
by milliams 6y ago
I really like that with GitLab you can run the CI script in a local container to debug things and then only commit and push once it's working.
- petethepig 6y agoThat's an even better solution.
- derefr 6y agoGitHub doesn't have exactly that, but it does have self-hosted workflow runners (which GitLab also has, as it happens.) If you run a local self-hosted runner, point your workflow at it, and trigger it (push/etc), then the job bounces from GitHub's backend over to your local runner, where you can then poke / prod / trace its execution. It's not quite as "safe" — you don't get to test the workflow in advance of deploying it, but rather have to test it by deploying it. But it's still pretty useful for debugging. You can e.g. set environment variables on the runner itself, that then propagate into the job, to see how they affect the job. Or change stuff in the runner's user's home directory until the job works, to figure out what the job needs there, rather than deploying over and over with different "tweak this file or that" steps.