Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

addon_net.vacom.jirassimo user

 


If you're using JIRA Server then:

...

How to format JIRA fields?

...


DateTime fields

By default, JIRA json is returning datetime fields in the following form: 2015-12-10T14:25:20.374+1100 which is fine for computers, but hard to read for humans. With Raley templates you can use a dedicated function to format JIRA dates using the format you prefer.

...

Assuming that customfield_12345 contains a value 10.45 the result will be 10. We use Java DecimalFormat to format the values. 

 


How to use Settings?

Settings is essentially a map of key=value pairs stored with Raley. At runtime you can get a value referenced by key using the following expression:

...

This will return a setting's value that corresponds to key stored in $issue.fields.customfield_10000 


Sending to different Slack channels depending on user's email

...

And in your template you just need to resolve a value from settings based on the key at hand. It is as simple as: 


Code Block
#foreach ($issue in $issues)
    $jirassimo.settingValue($issue.fields.customfield_10000)
#end

 


How to use custom scheduled event?

...

To save your time, here're the most popular CRON expressions that you might find useful while configuring your own messenger:

Expression
Explanation
0 0 10 ? * MON-FRIRun daily from Monday to Friday at 10AM
0 0 9 1/1 * ? *Run daily at 9AM
0 0 12 1/1 * ? *Run daily at 12AM

 


Our messaging system is implemented in such a way that at the beginning of every hour it checks all custom scheduled messengers to understand which of them are eligible to run during this hour. If specific messenger is eligible, then it will be run right away. You should keep in mind that since messengers are run hourly, then it doesn't make sense to use a CRON expression like this (running messenger every 10 minutes): 

0 0/10 * 1/1 * ? *

If you still do, the corresponding messenger will still run only once per hour.

 


How are run-time errors reported?

...

These errors would be normally reported to user on the list of Raley notifications just below the names of respective messengers. When you fix it, assuming that the fix was correct, the error message will disappear next time the current messenger is successfully run. 


Why do I need "jirassimo" user?

...

That said, if you need to restrict access of Raley AddOn to specific projects in JIRA you can do that by configuring access permissions on "jirassimo" user.  


How to group issues by status

If you want your scheduled messenger to display Jira issues grouped by their current status then:

a) Make sure that your JQL rule does select issues in all desired statuses. For example, if you need statuses "To Do", "In Progress" and "Done" in project XYZ, then use the following JQL:

project = XYZ and status in ("To Do", "In Progress", "Done") order by status

b) In your message template use #if statement to check for status of issue

Code Block
titleGrouping by statuses
linenumberstrue
Issues in status To Do <br/>
<table border=1>
    <tr>
       <th>key</th>
       <th>summary</th>
       <th>assignee email</th> 
    </tr>
    #foreach ($issue in $issues)   
       #if ($issue.fields.status.name == "To Do")   
          <tr>
             <td>$issue.key</td>
             <td>$issue.fields.summary</td>
             <td>$!issue.fields.assignee.emailAddress </td>
          </tr>
       #end
    #end
</table>


<br/><br/>
Issues in status In Progress <br/>
<table border=1>
    <tr>
       <th>key</th>
       <th>summary</th>
       <th>assignee email</th> 
    </tr>
    #foreach ($issue in $issues)   
       #if ($issue.fields.status.name == "In Progress")   
          <tr>
             <td>$issue.key</td>
             <td>$issue.fields.summary</td>
             <td>$!issue.fields.assignee.emailAddress </td>
          </tr>
       #end
    #end
</table>


<br/><br/>
Issues in status Done <br/>
<table border=1>
    <tr>
       <th>key</th>
       <th>summary</th>
       <th>assignee email</th> 
    </tr>
    #foreach ($issue in $issues)   
       #if ($issue.fields.status.name == "Done")   
          <tr>
             <td>$issue.key</td>
             <td>$issue.fields.summary</td>
             <td>$!issue.fields.assignee.emailAddress </td>
          </tr>
       #end
    #end
</table>