This blog post was written by Chelsea Bauer from Anova Apps (formerly known as Cprime Apps).
As Atlassian admins are continually bogged down with questions and support requests from their thousands of users across Jira, Confluence, Jira Service Desk/Management, Bitbucket, and Bamboo, the need for automating operational functions has never been greater. To maximize all admins’ capabilities, the utility app Power Scripts for Jira was built to fill the gaps in Atlassian’s base application relating to automation, administration of the software tooling, governance, integration, and migration.
In this guide, we will show you the building blocks of Power Scripts for Jira so you in return can build a solid automated foundation. This includes benefits, popular use cases, and an in-depth review so you can maximize Power Scripts for Jira to boost your operational efficacy and productivity.
Here’s what is going to be covered in this blog post:
- What is Power Scripts for Jira?
- Why do you need a powerful automation tool like Power Scripts for Jira?
- What are some of the popular use cases of Power Scripts for Jira?
- How to use Power Scripts for Jira.
Power Scripts for Jira is a simple, flexible, powerful, and portable solution that:
- Provides extensive scripting capabilities to Jira.
- Reduces implementation time by 50%
- Runs upgrades or maintenance without breaking your scripts, and
- Requires no prior engineering, Java Development, Groovy, Jira SDK, or Jira Plugin Development knowledge.
But before we can get you further acquainted with Power Scripts, we need to talk about SIL. SIL or Simple Issue Language is the core language abstraction layer that unites the ecosystem of interconnected apps. This language makes simple scripted solutions for automation, integration, and customization for Jira and Confluence possible.
Simple Issue Language is intended to simplify work for users who do not know Java/Groovy or do not want to dive deep into the implementation details of Jira. SIL lets users focus on the logic all the while shielding them from some of the demanding tasks that affect other JVM-compatible languages, like Groovy (e.g. imports, deprecations, etc.).
It is very easy to learn and is also extremely flexible and forgiving so users can learn and work with the basics of workflow customization, email handling, issue listeners, scheduled tasks, and so on. Here is what you can look forward to with SIL:
- All the dependencies and issues are maintained by the vendor so you do not 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 this scripting across multiple instances and take advantage of a federated aspect of SIL communicating across instances.
- Most of the other Power solutions are code-ready templates that you can copy and paste to be used (See the ready-made tutorials, templates, and routines section).
You can use SIL Engine with all of the Power Suite apps:
- Power Scripts for Jira: Powerful SIL scripting for Jira
- Power Scripts for Confluence: Powerful SIL scripting for Confluence
- Power Custom Fields for Jira: Configurable custom fields
- Power Database Fields PRO for Jira: Query dynamic information from external systems
- Power Actions® for Jira: Create dialogues and wizards on the fly
- Power Dashboards, Reports, and Gadgets: Compiled complex calculations through visualize reports
- SIL Groovy Connector: Groovy scripting inside SIL environment
- SIL Tempo Connector: Extending Tempo time tracking functions
- Health Reports for Jira: Fix health issues that lie undetected in Jira instances
Power Scripts for Jira enhances the SIL programming environment by providing more ways to use SIL scripts.
As you scale and your processes become more complex, oftentimes you end up buying multiple plugins to tackle the new hurdles that arise with any new enterprise growth or development. Not only do the price tags on each of these new plugins add up, the sheer volume of plugins become cumbersome to your Jira performance.
Power Scripts’ many functionalities were designed to solve the challenges and limitations of Jira by giving you the ability to customize Jira to meet your specific needs. We will take a deep dive into how to use these functionalities in just a bit.
You can consolidate many single-purpose apps into one thus making Jira easier to configure to your processes, making Jira administrators more efficient, and gives you the freedom to reallocate these savings into other parts of your business.
Why do you need it, you might ask:
It’s Cross-compatible across Server, Data Center, and Cloud. It also stays in the context of Jira vs. thinking of Jira internals.
SIL allows for quicker solutions with an abstracted language layer. Your scripts do not break on upgrades or maintenance periods as guardrails and governance are set in place. As a result, you’ll have less technical debt to worry about.
You can simply use the pre-baked scripts for non-technical usage as no Groovy, Jira SDK or Jira plugin development knowledge would be needed. In practice, you’ll be using 3-4 of (SIL) code vs. 30-40 lines of Groovy code, and this would obviously reduce your dependency on multiple vendors as well.
Scripting is actually only one part of the story. You can simply use Power Scripts for Jira in conjunction with the other Power Apps for Actions, Live Fields, Databases, and implementations for tailor custom solutions.
You can seamlessly integrate with many other popular tools such as:
Amazing, right? Let’s look at a simple example. The learning curve is easy.
Here is a sample of groovy code from a 26-line script to create a scripted custom field:
**note: truncated to fit on the page.
This code requires 6 import files, and users developing code need to understand all the class files required to create a script. All those factors can involve extensive research and time delays.
Now here is the SIL Script to create the same scripted custom field:
Zero imports. 1 line of code. Nuff said.
Let’s take a look at how users are putting Power Scripts for Jira to work.
Users often focus on the areas of Permissions & Restrictions, Fields Manipulation, Jira UI Manipulations, and Process Automation.
For compliance and security issues:
- Read-Only Issues: You can uphold compliance by making a ticket read-only once the last stage is reached. This way, the final status is preserved to follow compliance and traceability.
- Locking Issues: If you do not want multiple hands editing tickets, you can lock an issue so that only the assignee has editing privileges.
- Restricting Issue Creation: In the same vein, if you do not want multiple users creating tickets whenever they please, you can set the conditions so that only specific users have permissions to create issues.
Here are a few examples of how can you manipulate fields in Jira:
- Field Capture (*Requiring): You can use this feature when you need to access values of a particular field, and or need access to values from a third-party site/tool.
- Automating Field Values on Issue Creation: Upon ticket creation, you can automatically pull values from a third-party website whenever a corresponding action happens. Such as whenever a Salesforce opportunity is created, a corresponding Epic is created with that Salesforce opportunity automatically, thus populating a field.
- Show & Hide Fields: Want to show/hide a field at a specific time in the workflow? Set the proper conditions and your users will only see fields relevant to them at the right point in the process.
These features will help streamline all of your processes:
- Advanced JQL Reporting: JQL is great but somewhat limited. By using advanced JQL reporting, you can do things like writing a script that does complex conditions then apply dates to filter issues.
- Auto Prioritization: You can automatically prioritize your tickets based on certain values, conditions, and metrics calculated from fields on your tickets.
- Custom Calculations: Use this feature to combine values from multiple fields, and multiple values from third-party tools.
- Critical Risks, Blockers, Dependencies: You can enforce process compliance by setting conditions on stages, transitions, fields, and more.
Here are a few notification options you can use to manipulate Jira’s UI:
- Custom error messages: Sometimes Jira error messages lack content and are therefore not helpful. You can set your error messages such as whenever a Jira ticket fails to transition to the next stage.
- Alerts: When you are caught up in the hustle and bustle of daily work, minor things can slip through the cracks. You can set alerts that remind you and your team when deadlines are coming, and or when sprint points are more than your average, etc.
- Conditional Notifications: Set conditions for if then, or at this time such as if you want to notify when a support tech closes a specific ticket on a specific day at a specific time.
Keep in mind that these are just a few of the possibilities you can use Power Scripts for Jira to enhance your Jira workflows. Let’s take a deep dive into the core functionalities so you can learn how to leverage Power Scripts to best serve your needs.
With Power Scripts, you can customize your Workflows, Services, Listeners, Live Fields, Script Gadgets, REST Service, and more. Below you will see these foundational components divided up into a 5-part series for an in-depth review.
Learn all about the scripting language, Simple Issue Language (SIL), and how it interacts with variables, data types, arrays, structs, custom fields types, comments, operators, conditionals, additional statements, routines, and more.
Read about this here.
Get ready to see what some real power can do. This section teaches you the functions of Power Scripts for Jira that will make you a mean, lean, Jira customization machine. Such as workflow – conditions, validators, and post functions, scheduled services, event listeners, live fields, script gadgets, and REST Service.
Learn all the basics of post functions, routines, and listeners. Discover different routines powered by the Simple Issue Language (SIL) and Power Scripts for Jira like Live Fields routines, Agile board routines, Service Desk routines, Mail handler routines, Listener routines, and SIL® Runner Gadget routines.
Now that you have the basics, prepare yourself to be fully integrated with scheduling routines and running scripts with issue context. You will also learn about structures with custom fields and integrate them in LDAP, Database, Email, Slack/Stride. SFDC, HTTP/REST, and or System.
Read more about this here.
Live Fields! This is one of the most powerful features in Power Scripts™ for Jira. Learn how to master it correctly, and you can do a lot with UI manipulation including the standard and custom fields in Jira, the custom fields provided by our apps, and certain other graphic elements like buttons, tabs, and so on.
You can further extend Power Scripts for Jira with the following functionalities and their resources:
|JQL FUNCTIONS||MAIL HANDLERS||WEBHOOKS||JSD AUTOMATION||SCRIPT GADGET|
In this blog post, we went over Power Scripts’ various functionalities to adapt Jira according to your specific requirements and covered a few common use cases.
The add-on is very easy to learn and is flexible enough to allow users to work with the basics of workflow customization, issue listeners, scheduled tasks, and much more enabling them to fill the gap they might find in Atlassian’s base application relating to automation.