Customizing further with Groovy scripts

Introduction to Groovy

Groovy is an object-oriented programming language for the Java platform. It is a dynamic language with features similar to those of Python, Ruby, Perl, and Smalltalk. It can be used as a scripting language for the Java Platform. It is easy to learn, has smooth Java integration, vibrant and rich ecosystem and powerful features. To know more about Groovy, see the official Groovy Documentation.

On this page:

Learning Groovy

To learn more about the Groovy language:

Groovy in JMWE

Groovy in JMWE can be used either to write a Groovy expression or a Groovy template in the workflow extension configuration. 

Groovy expression results in JMWE are used in:

  • All post-functions with the Conditional execution section to execute a post-function conditionally

  • Target issues section of all post-functions that operate on related issues when Issues returned by a Groovy script or Issues returned by JQL search is selected under Which Issues field.

  • Scripted (Groovy) operation on issue post-function to execute a Groovy script against an issue

  • Scripted (Groovy) Condition to execute a condition

  • Scripted (Groovy) Validator to execute a validator

  • Comment issue and Comment linked issues post-functions to create the body of the comment by selecting Groovy expression as the Comment type

  • Create/Clone issue post-function to

    • Calculate a project by selecting Calculated in Project

    • Calculate a parent issue key by selecting Calculated in Parent issue

    • Set fields of new issue by selecting Groovy expression as the Value type and 

    • Add a comment to the current issue by selecting Groovy expression as the Comment type

    • Multiple iterator section of the Create/Clone issue post-function

  • Set field value and Set field value of linked issues post-functions to set a field value by selecting Groovy expression as the Value type

  • Email issue post-function to

    • Write the Subject, HTML body, Text body

    • Set the Recipients from the script

  • Unlink issues from the current issue post-function to unlink issues based on the result of a Groovy condition

  • Admin screen to test/run Groovy scripts

  • Shared Groovy Scripts under JMWE administration

Writing Groovy scripts in JMWE

To learn how to write groovy scripts for JMWE, see: