Section |
---|
Column |
---|
Excerpt |
---|
A variable looks up a value from the template context. This documents details on the variables available in JMWE and how to create custom variables. |
If you want to insert the value of a variable in your template, you can use the following syntax: {{ myVar }} . This looks up for the myVar variable from the context and displays it. Variable names can have dots in them which look up properties, just like in javascript. |
Column |
---|
|
Panel |
---|
borderColor | silver |
---|
bgColor | #f5f5f5 |
---|
borderWidth | 1 |
---|
borderStyle | solid |
---|
| On this page: |
|
|
Variables available in JMWE
JMWE makes the issue, transition, linkedIssue, parentIssue, now
and currentUser
variables available to templates. You can access their properties using "." or "[ ]". For example, you can access the current issue key using {{issue.key}}
.
issue variable
The issue
variable is used to insert data of the issue being transitioned. You can access the issue data by looking up at its properties.
...
Expand |
---|
title | Click here to see some properties of the issue variable |
---|
|
Properties | Description |
---|
issue.id | Internal Id number of the issue | issue.key | Issue key | issue.fields.summary | Issue summary | issue.fields.description | Issue description | issue.fields.issuetype.name | Issue type | issue.fields.issuetype.description | Issue type description | issue.fields.creator.name | Username of the person who created the issue | issue.fields.creator.emailAddress | Email address of the person who created the issue | issue.fields.creator.displayName | Displays name of the person who created the issue | issue.fields.creator.timeZone | Time zone of the creator | issue.fields.reporter.name | Username of the person who reported the issue | issue.fields.reporter.emailAddress | Email address of the person who reported the issue | issue.fields.reporter.displayName | Display name of the person who reported the issue | issue.fields.reporter.timeZone | Time zone of the reporter | issue.fields.assignee.name | Username of the person assigned to the issue | issue.fields.assignee.emailAddress | Email address of the person assigned to the issue | issue.fields.assignee.displayName | Display name of the person assigned to the issue | issue.fields.assignee.timeZone | Time zone of the assignee | issue.fields.created | Date and time the issue was created | issue.fields.updated | Date and time the issue was last updated | issue.fields.priority.name | Issue priority name | issue.fields.project.name | Issue project name | issue.fields.project.key | Issue project key | issue.fields.lastViewed | Date and time the issue was last viewed by the current user | issue.fields.fixVersions[0].name | Name of the first fix Version/s | issue.fields.fixVersions[0].description | Description of the first fix Version/s | issue.fields.fixVersions[0].releaseDate | Release date of the first Fix Version/s | issue.fields.versions[0].name | Name of the first Affects Version/s | issue.fields.versions[0].description | Description of the first Affects Version/s | issue.fields.versions[0].releaseDate | Release date of the first Affects Version/s | issue.fields.components[0].name | Name of the first component | issue.fields.components[0].description | Description of the first component | issue.fields.duedate | Due date of the issue | issue.fields.timespent | Time spent on the issue | issue.fields.timeoriginalestimate | The original estimate of the time required to resolve the issue | issue.fields.resolution.name | Resolution of the issue | issue.fields.watches.watchcount | The number of people watching the issue | issue.fields.labels | Labels the issue relates to | issue.fields.environment | The hardware or software environment the issue relates to | issue.fields.votes | The number of votes an issue has |
|
transition variable
The transition
variable is used to insert information of the transition being executed.
...
Expand |
---|
title | Click here to see the properties of the transition variable |
---|
|
Properties | Description |
---|
transition.transitionName | Name of the current transition | transition.transitionId | Numerical ID of the current transition | transition.from_status | Source status of the transition | transition.to_status | Destination status of the transition | transition.workflowName | Name of the current workflow | transition.workflowId | Numerical ID of the current workflow |
|
linkedIssue variable
The linkedIssue
variable, which is only available from post-functions that work on linked issues, is used to insert data of the linked issue being processed by the post-function.
...
Expand |
---|
title | Click here to see the properties of the linkedIssue variable |
---|
|
Properties | Description |
---|
linkedIssue.id | Internal Id number of the linked issue | linkedIssue.key | Linked issue key | linkedIssue.fields.summary | Linked issue summary | linkedIssue.fields.description | Linked issue description | linkedIssue.fields.issuetype.name | Linked issue type | linkedIssue.fields.issuetype.description | Linked issue Issue type description | linkedIssue.fields.creator.name | Username of the person who created the linked issue | linkedIssue.fields.creator.emailAddress | Email address of the person who created the linked issue | linkedIssue.fields.creator.displayName | Displays name of the person who created the linked issue | linkedIssue.fields.creator.timeZone | Time zone of the creator | linkedIssue.fields.reporter.name | Username of the person who reported the linked issue | linkedIssue.fields.reporter.emailAddress | Email address of the person who reported the linked issue | linkedIssue.fields.reporter.displayName | Display name of the person who reported the linked issue | linkedIssue.fields.reporter.timeZone | Time zone of the reporter | linkedIssue.fields.assignee.name | Username of the person assigned to the linked issue | linkedIssue.fields.assignee.emailAddress | Email address of the person assigned to the linked issue | linkedIssue.fields.assignee.displayName | Display name of the person assigned to the linked issue | linkedIssue.fields.assignee.timeZone | Time zone of the assignee | linkedIssue.fields.created | Date and time the linked issue was created | linkedIssue.fields.updated | Date and time the linked issue was last updated | linkedIssue.fields.priority.name | Linked Issue priority name | linkedIssue.fields.project.name | Linked Issue project name | linkedIssue.fields.project.key | Linked Issue project key | linkedIssue.fields.lastViewed | Date and time the linked issue was last viewed by the current user | linkedIssue.fields.fixVersions[0].name | Name of the first Fix Version/s | linkedIssue.fields.fixVersions[0].description | Description of the first Fix Version/s | linkedIssue.fields.fixVersions[0].releaseDate | Release date of the first Fix Version/s | linkedIssue.fields.versions[0].name | Name of the first Affects Version/s | linkedIssue.fields.versions[0].description | Description of the first Affects Version/s | linkedIssue.fields.versions[0].releaseDate | Release date of the first Affects Version/s | linkedIssue.fields.components[0].name | Name of the first component | linkedIssue.fields.components[0].description | Description of the first component | linkedIssue.fields.duedate | Due date | linkedIssue.fields.timespent | Time spent | linkedIssue.fields.timeoriginalestimate | The original estimate of the time required to resolve the linked issue | linkedIssue.fields.resolution.name | Resolution of the issue | linkedIssue.fields.watches.watchcount | The number of people watching the linked issue | linkedIssue.fields.labels | Labels the linked issue relates to | linkedIssue.fields.environment | The hardware or software environment the linked issue relates to | linkedIssue.fields.votes | The number of votes a linked issue has |
|
parentIssue variable
The parentIssue
variable, which is only available from post-functions that work on the parent issue, is used to insert data of the parent issue being processed by the post-function.
...
Expand |
---|
title | Click here to see the properties of the parentIssue variable |
---|
|
Properties | Description |
---|
parentIssue.id | Internal Id number of the parent issue | parentIssue.key | Parent issue key | parentIssue.fields.summary | Parent issue summary | parentIssue.fields.description | Parent issue description | parentIssue.fields.issuetype.name | Parent issue type | parentIssue.fields.issuetype.description | Parent issue Issue type description | parentIssue.fields.creator.name | Username of the person who created the parent issue | parentIssue.fields.creator.emailAddress | Email address of the person who created the parent issue | parentIssue.fields.creator.displayName | Displays name of the person who created the parent issue | parentIssue.fields.creator.timeZone | Time zone of the creator | parentIssue.fields.reporter.name | Username of the person who reported the parent issue | parentIssue.fields.reporter.emailAddress | Email address of the person who reported the parent issue | parentIssue.fields.reporter.displayName | Display name of the person who reported the parent issue | parentIssue.fields.reporter.timeZone | Time zone of the reporter of the parent issue | parentIssue.fields.assignee.name | Username of the person assigned to the parent issue | parentIssue.fields.assignee.emailAddress | Email address of the person assigned to the parent issue | parentIssue.fields.assignee.displayName | Display name of the person assigned to the parent issue | parentIssue.fields.assignee.timeZone | Time zone of the assignee of the parent issue | parentIssue.fields.created | Date and time the parent issue was created | parentIssue.fields.updated | Date and time the parent issue was last updated | parentIssue.fields.priority.name | Parent Issue priority name | parentIssue.fields.project.name | Parent Issue project name | parentIssue.fields.project.key | Parent Issue project key | parentIssue.fields.lastViewed | Date and time the parent issue was last viewed by the current user | parentIssue.fields.fixVersions[0].name | Name of the first Fix Version/s | parentIssue.fields.fixVersions[0].description | Description of the first Fix Version/s | parentIssue.fields.fixVersions[0].releaseDate | Release date of the first Fix Version/s | parentIssue.fields.versions[0].name | Name of the first Affects Version/s | parentIssue.fields.versions[0].description | Description of the first Affects Version/s | parentIssue.fields.versions[0].releaseDate | Release date of the first Affects Version/s | parentIssue.fields.components[0].name | Name of the first component | parentIssue.fields.components[0].description | Description of the first component | parentIssue.fields.duedate | Due date | parentIssue.fields.timespent | Time spent | parentIssue.fields.timeoriginalestimate | The original estimate of the time required to resolve the parent issue | parentIssue.fields.resolution.name | Resolution of the parent issue | parentIssue.fields.watches.watchcount | The number of people watching the parent issue | parentIssue.fields.labels | Labels the parent issue relates to | parentIssue.fields.environment | The hardware or software environment the parent issue relates to | parentIssue.fields.votes | The number of votes a parent issue has |
|
currentUser variable
The currentUser
variable is used to insert information about the current user, i.e. the user triggering the transition. Only two properties of the current user are available: key and name. To set a user-type field (such as Assignee, Reporter, or any custom User-picker field), use the name property.
...
{{currentUser.key}}
returns the key of the user triggering the transition, e.g. carter001
now variable
The now
variable is used to insert the current date and time. This is useful to save a transition's execution date/time in a custom field.
...
{{
now}}
returns the current date and time, e.g. 2016-09-30T13:57:23.608Z
nowObj
The nowObj variable represents now as a Moment.js object.
...
{{ issue.fields.duedate | date('clone') <= nowObj }}
returns true
if the ticket is overdue.
User-defined variables
In addition to the above variables, you can also create your own variables within the template using the set Nunjucks tag.
For example:
{% set x = "High" %}
sets the value of the variable x to High. You can also set the variable to an object. For example: {% set assignee = issue.fields.assignee %}