Modern CI is too complex and misdirected (2021)
gregoryszorc.com
Modern CI is too complex and misdirected (2021)
1–10 of 207 posts
Re: Modern CI is too complex and misdirected (2021)
#2Re: Modern CI is too complex and misdirected (2021)
#3Im still rocking my good old jenkins machine, which to be fair took me a long time to set up, but has been rock solid ever since and will never cost me much and will never be shut down.
But i can definitely see the appeal of github actions, etc…
Re: Modern CI is too complex and misdirected (2021)
#4These online / paid CI systems are a dime a dozen and who knows what will happen to them in the future… Im still rocking my good old jenkins machine, which to be fair took me a long time to set up, but has been rock solid ever since and will never cost me much and will never be shut down. But i can definitely see the appeal of github actions, etc…
god help you, and don’t even bother with the local emulators / mocks.
Re: Modern CI is too complex and misdirected (2021)
#5This times a million.
Use a real programming language with a debugger. YAML is awful and Starlark isn’t much better.
Re: Modern CI is too complex and misdirected (2021)
#6Re: Modern CI is too complex and misdirected (2021)
#7One workaround that I have briefly played with but haven't tried in anger: Gitlab lets you dynamically create its `.gitlab-ci.yaml` file: https://docs.gitlab.com/ci/pipelines/downstream_pipelines/#d...
So you can have your build system construct its DAG and then convert that into a `.gitlab-ci.yaml` to run the actual commands (which may be on different platforms, machines, etc.). Haven't tried it though.
Re: Modern CI is too complex and misdirected (2021)
#8> But if your configuration files devolve into DSL, just use a real programming language already. This times a million. Use a real programming language with a debugger. YAML is awful and Starlark isn’t much better.
Re: Modern CI is too complex and misdirected (2021)
#9Re: Modern CI is too complex and misdirected (2021)
#10These online / paid CI systems are a dime a dozen and who knows what will happen to them in the future… Im still rocking my good old jenkins machine, which to be fair took me a long time to set up, but has been rock solid ever since and will never cost me much and will never be shut down. But i can definitely see the appeal of github actions, etc…
until you have to debug a GH action, especially if it only runs on main or is one of the handful of tasks that are only picked up when committed to main. god help you, and don’t even bother with the local emulators / mocks.