3 ms·
I truly, truly dislike Jenkins but haven’t found a better locally hosting CI system that is repo agnostic. My issues with Jenkins: 1. Groovy is a really annoy
by dagmx 3y ago
I truly, truly dislike Jenkins but haven’t found a better locally hosting CI system that is repo agnostic.
My issues with Jenkins:
1. Groovy is a really annoying language to configure stuff in. I’ve never written it for other things but it has so many little idiosyncrasies that catch you out.
2. Jenkins doesn’t have much in the way of resource management. It’s easy for a job to take over the entire node and Jenkins doesn’t have the smarts out of the box to monitor this and put things in a different node.
3. So many random job killing bugs that boil down to poor job isolation and resource tracking. Every now and then killing one job can take down another.
4. The UI and UX is bad. I know there are better interfaces for it, but they all just have such limited interface exposure of state beyond “running” and “failed”. Estimate time is useless because it aggregates failed jobs.
5. Inter job dependency management and tracking is poor and annoying to setup. It’s doable, but really should be a better first class citizen.
In many ways, I start looking to other tools to fill my CI need that aren’t meant for CI: Render farm managers.
Film farm rendering is largely similar to CI at a structural level. But they have much higher throughput of individual jobs and have built around making the most of that. There’s better inter job dependency tracking and resource management because of that, and they’re built to expose more information up front to help non-tech savvy artists or render wranglers who need to see status quickly at a glance on a few hundred jobs at once.
- gregopet 3y agoI've written web servers in Groovy for at least 5 years.. Groovy is great, once you get to know it, but some aspects of its design certainly don't "click" for a while. I'd be using a syntax for years when I'd read in some blog post "Oh that's just xyz with a shorter syntax" and I'd go Ooooh! Great little language though, IMHO one of the best for quick prototyping.
- dagmx 3y agoI don’t doubt at all that Groovy is great for doing stuff when you’re used to it and spend a reasonable amount of time with it. I’ve heard great things. But things like the differences between single quotes and double quotes and a bunch of other subtleties like that, make it really frustrating when the only time I use it is updating build logic. I’d honestly prefer a more consistent language like Python or Lua. Even if I don’t code them all day, they have more resources to lookup and fewer gotchas.