Midwest Dev Chat


  • The newest 15 messages in the super-cool #java channel.

  • 01/15 17:28:26 Ressie: Yeah. I meant more a local terminal-based app
  • 01/15 17:28:33 Ressie: CLI
  • 01/15 17:31:35 Ressie: welp, fwiw, I have been trying to use `[].inject()` only to find out that, indeed, Jenkins is a terrible, awful, no good platform.
  • 01/15 17:31:49 Ressie: https://jenkins.io/doc/book/pipeline/syntax/#_f...
  • 01/15 17:31:57 Ressie: > … some Groovy idioms such as collection.each { item → /* perform operation */ } are not fully supported. See JENKINS-27421 and JENKINS-26481 for more information.
  • 01/16 08:07:13 Marivel: I figured, but aside from those kinds of things, not that I know of. Seriously? That’s charming. “It’s Groovy, but really it’s a tossup whether you can actually use anything you like about Groovy.”
  • 01/16 10:05:56 Arline: And you have to disable so much of the security to get Groovy scripts and complex Jenkinsfiles to work.
  • 01/16 10:06:12 Arline: Or spend your life submitting new versions of the code and having an admin approve new method invocations.
  • 01/16 10:07:31 Arline: They need much better sandboxing…perhaps starting with a SecurityPolicy for all submitted code. Dunno if you can do a Policy-per-Classloader, or if it’s per-JVM.
  • 01/16 10:08:16 Arline: Wait, it wouldn’t matter. Code shared by your Jenkins customizations and your build or tests would execute in different processes.
  • 01/16 10:59:19 Ressie: Yeah, Jenkins is a trash heap. Or, as my coworker put it, the Katamari Damaci of CICD — it goes around hoovering up anything in its path. There’s Jenkins plugins for _everything_ — like, I would be not at all surprised if Skynet runs from Jenkins scheduled jobs some day. And yet, it’s a UX nightmare. I’ll try not to take over <#C03Q3P24Q|java> with my sturm und drang about Blue Ocean. But the short of it is, yeah, Groovy’s just a scripting language, but wait, you can’t use Groovy itself, and — not to rag on the Java ecosystem — but if you’re going to give me “just a scripting language” why not Python, or ffs shell? Groovy is obscure enough that none of the past several companies I’ve worked at take time to dig into refining their Jenkins pipelines. That “not-quite groovy” footnote (like, seriously, a _footnote_??) really drives the nail in.
  • 01/16 12:27:05 Ressie: not to pile on but… well, ok, piling on
  • 01/16 12:27:24 Ressie: not only did `inject` not work, but `writeFile` in a for loop doesn’t work.
  • 01/16 12:27:50 Ressie: sorry, this is more <#C02T8T905|devops> anyway.
  • 01/16 12:36:29 Marivel: Jenkins is basically just something I use because the company decided to use it. But yeah, I think… Groovy makes sense as a choice if the main contributors are a bunch of Java people who are comfortable with Groovy, but only supporting it with some big asterisks just makes everything more complicated than it seems like it needs to be.
  • *Usernames have been changed to protect the innocent.
We're currently 1132 members strong. Join us!
Request Invite

Check out all the cool channels!

Join the conversation!