With the new release of 1.0.5 of the SIL® Groovy Connector on the Atlassian Marketplace, SIL® and Power Scripts™ for Jira now support the use of the groovy language.

WAIT! BEFORE YOU GO GET ALL GROOVY ON US…

The Road to Enterprise Scripting != Groovy.  Are you listening Jira Admins and Developers?  Do you depend on groovy to implement custom solutions? Is Script Runner too complex or has it become too much to manage yet? Our new release of our SIL® Groovy Connector, has added compliance for groovy scripts to be run in the SIL® Manager. For all you Scriptrunner users, you have another opportunity to come to the right side of governance and stability. No more excuses. It’s time to simplify your complexity and consolidate your plugin app strategy in order to stop paying for duplicate apps that do the same thing.

 

WHAT WILL THE SIL GROOVY SCRIPT CONNECTOR ALLOW YOU TO DO?

Now users can leverage the groovy language in Power Scripts™ for Jira & Power Scripts™ for Confluence.  We see the primary value is that users can:

  • Implement groovy language and call scripts in our SIL® Manager. However, this is a stepping stone towards moving away from groovy and onto our Simple Issue Language®.
  • Move off of ScriptRunner and more towards adopting a true enterprise-grade scripting language that is scalable, sustainable and doesn’t come with a huge technical debt responsibility.
  • Wrangle back the ownership over Atlassian upgrades and maintenance paths and get back to establishing governance at scale.

 

WHAT BENEFITS YOU SHOULD EXPECT FROM MOVING TO SIL?

Now that we are groovy compliant, most of our SIL® language is boiled down for users into simple one line routines in order to simplify common complexities of writing groovy. However, we understand that this is a way for you to make a jump to simplify your custom solution needs in the speediest most effective way.

We actually created our own language layer that renders this a non-issue. Our developers handle all of these dependencies so you and your Jira Admins don’t have to.  Our language layer simplifies the need to go rogue and jeopardize your instance. We want you to focus on fast solutions that are easy to implement and scale. In order to do that, we think you have to commit to governance. Here’s what you can look forward to with SIL:

  • We maintain all the dependencies and the issues so you don’t have to worry about broken scripts and a backlog of technical debt.
  • If you wrote a script in an older version, it will work in the newer version and 10 versions from now without having to touch it.
  • You can leverage our scripting across multiple instances and take advantage of a federated aspect of SIL communicating across instances.
  • Most of our solutions are in code ready templates that allow you to copy and paste them to be used (See our ready-made tutorials, templates and routines section).

While we want you to get to SIL, we know it may take you a few groovy scripts to get here. We just want you to know that we are here for you with open arms, willing to help you. We look forward to getting you on the right path towards a true enterprise script framework.

Still don’t believe me? Let’s look at a simple example! The learning curve is easy.

 

A COMPARISON EXAMPLE: THE PEPSI CHALLENGE

A SIL® ROUTINE:

SCRIPTRUNNER GROOVY SOLUTION:

Routines from SIL® are one liner, pre-built, code-ready scripts that our users commonly ask for. If you are looking for an easy solution visit out routines section and feel free to copy and paste away into your SIL Manager.

code sample of a SIL Routine

Here’s a 1 line code sample of a SIL® Routine.

  • 0 Imports
  • 1 line of code
  • 2 words

For groovy solutions, you are essentially opening a window into the Jira API and it requires you to understand all the intricacies of Groovy and Jira internals in order to cobble together your solution. Sadly, these tend to break very frequently and it becomes a struggle to maintain this at scale let alone in one project.


*note: truncated to fit on the page.

Here’s a 26 line code sample of a Scriptrunner groovy script that creates a scripted custom field.

  • This code requires 6 imported files.
  • Users who will write, interact and maintain this code in the future will have to understand all the class files required to make this script.
  • We commonly see hundreds of scripts deployed across Dev, Test, and Production so this just magnified that you have a maintenance problem here.

 

 

“THE PAINS YOU WILL FACE WITH GROOVY SCRIPTED SOLUTIONS”

Not to knock groovy but we’ve seen that there are deep pains that result from customers leveraging groovy solutions. We commonly see our customers asking us for help after groovy has compounded in complexity. Here’s a few common recurring themes we see:

  • A developer decides to make a custom solution and then moves on, leaving someone else to sort this out later.
  • An admin uses Scriptrunner by Adaptavist, and implements custom groovy scripts and it breaks the upgrade and maintenance path delaying or even shelving the customers’ ability to stay up to date with Atlassian feature sets.
    Fun Fact: Nobody actually knows where groovy is being used today btw.
  • A custom plugin was created and now is breaking the environment because of a deprecated API and now it is preventing the company from updating to the latest software.
  • A Jira admin or a developer has to now maintain a huge volume of technical debt tied to scripts that break. This debt load increases in scale and becomes too intense to manage and the customer instance becomes unstable or even un-useable.
  • Too many groovy scripts without governance impacts the performance of Atlassian products and users start to complain about the slowness of the system to get their daily work done.

 

WHAT YOU SHOULD KNOW BEFORE LEVERAGING GROOVY

The groovy gaffe is a term we use to describe the slippery slope.  One key area that brings this to light is Deprecated API’s and the ongoing activity from Atlassian and as they deprecate your scripts break so if you decide to take the groovy plunge, make sure you think ahead and have a plan to manage this, version this in a way that can scale with your user needs. If you really want the best way to visualize how groovy gets dangerous, let’s look at another example. Below, is a common API deprecation list from Atlassian that shows all the deprecated URL’s for just Jira 7.6.1 and since groovy leverages these API’s, if your script references any of these API’s, your scripts have broken. In order to understand the magnitude of this, let’s stop and visit the URL below to understand the scope here for just Jira 7.6.1.
(Just click the link below and scroll in horror. We will wait)

Atlassian Jira 7.6.1 Deprecated List
https://docs.atlassian.com/software/jira/docs/api/7.6.1/deprecated-list.html
https://video.drift.com/v/abMFAFks1Wo/

sil groovy script

Are you stuck with Groovy and can’t kick the habit? If you are struggling with groovy and don’t know where it is being used in your instance, reach out for help in our Cprime Apps support portal and we can help you audit, manage and identify where it’s being used and come up with a plan together to rewrite your solutions on SIL®. We have a history of helping our large customers migrate from ScriptRunner to Power Scripts™ and get them back their autonomy over your toolsets.



Tagged with: , , , ,

Categorized in: , , , , , , , ,