3 ms·
I'm not at all a fan of GitHub actions, but come on, Hudson/Jenkins was a nightmare world, GitHub actions is a million times better
by shawabawa3 10mo ago
I'm not at all a fan of GitHub actions, but come on, Hudson/Jenkins was a nightmare world, GitHub actions is a million times better
- paulddraper 10mo agoJenkins is in every way a “Java” program, and not the good kind. What you can say for it, is that it was free and near infinitely hackable.
- mrguyorama 10mo agoI use Jenkins every single day, and have been using it my entire career through three different companies self hosting it. Please tell me how we somehow have been hobbled despite having simple and clear pipelines setup that autobuild any branch we want and allow one click deploys to our preprod environment and automatically manage versioning and scalably handle load from "Literally zero" to "Everyone in the company wants to rebuild everything now" and goes down less than github. What are we supposedly missing? More importantly, what are we missing that tangibly improves results for our consumers?
- paulddraper 10mo agoAssuming all those three were post-Jenkinsfile, it’s pretty decent. Multibranch is still weird and obviously added-on. Writing plugins is ugly.
- terom 10mo agoWorking with Jenkins CasC, JobDSL and declarative pipelines, I'm not sure where the million times comes from. Sure, there are some annoying parts, and GHA has the social network for reusable actions, but apart from that it's not that different. Oldschool maven type jobs where you type shell script into a `<textarea>`? Yeah, let's not talk about those, but we don't have a single one left anymore.
- __float 10mo agoJenkins Groovy is awful and full of footguns. Have you ever run into a serialization exception? It's too powerful and there are too many of its implementation details exposed to the user.
- terom 10mo agoI haven't seen a serialization exception, but I have run into plenty of footguns with YAML (ref GitHub Actions). The DSL semantics can be weird with when things like params/env expansions in options block are evaluated.