As a follow up to my renewed Jenkins Adventures, the declarative pipelines have gotten much saner while I was not looking.
There's still a lot of idiosyncrasies in the whole Groovy sandbox magic, but you can absolutely keep it very very simple with just stages and steps and it's not a HUGE departure from the modern `have this yaml file` convention in everything else.
I just wish their linter wasn't "right so just call this fucking API endpoint lol, enjoy wrangling tokens."
And hey, if wrapping a bunch of magic in groovy code pains you, just set some env vars and delegate that to a wrapper script you just run with `sh` in your steps. I promise no one will judge.
I am upgrading this entire affair from "grudgingly conceding it is the only option" to "hey, not bad, actually"
#jenkins #homelab #ci