4 ms·
I'm really not sure if we are using CI correctly. Sometime i think all those CI Templates should be replaced by just one executable that does everything, like a
by andix 3y ago
I'm really not sure if we are using CI correctly. Sometime i think all those CI Templates should be replaced by just one executable that does everything, like a modern alternative to Makefiles (and there are a lot of build tools).
So the CI pipeline would only call the build tool, like "./build containers push-to-registry release:1.0.0 run-tests"
Those scripts can be tested and debugged everywhere. Also migrating to a different CI platform would be really easy.
- WirelessGigabit 3y agoWhile this is totally possible you lose a lot of the things that make GitHub Actions nice. Nice logs, annotations, individual steps that went wrong. Being able to see the status at a glance. Seeing 10 steps where 1 fails and 13 pass is nice.
- andix 3y agoAll those things the custom build tool would need to handle. It needs more or less the same functionality as GitHub actions and the marketplace. It would also need to integrate with different CI platforms to some extent for reporting and user interactions.
- pixl97 3y agoHow does that integrate in with every else's tooling? At least in enterprise there are a ton of things like "SCA, SBOM, Compliance report, etc" that tie in with plugins and such. Also, why would a large commercial CI want to have their environment too open?
- andix 3y agoThey don’t want to have their environments too open, that’s why we are at this point. Those enterprise tools i know (like sonarqube for example) are mostly cli tools in their core. Can be integrated everywhere.
- gravlaks 3y agohttps://dagger.io/ https://dagger.io/ may be an alternative. You can run it in GitHub actions somehow as well.
- andix 3y agoThanks for the tip, I should try that. I was using https://nuke.build https://nuke.build for one or two projects. It's in .NET and probably not so useful if you need to build non .net code bases. Stopped using it because some of their code is proprietary, and it's not as useful as I thought.