Have you ever wanted to swap out a Jira filter subscription email with a Slack message? Or remind users each morning of issues they have open for a project in Jira?
Something like this perhaps?
Oh how I love those concrete pants
Using
Automation for Jira, we can run a rule every morning that checks for open issues in a particular project, and sends Slack private messages to the assignees. This might be the most helpful to agents in a Jira Service Desk project, but might be useful to software teams as well!
Before we begin, here's an overview of what the completed Automation rule will look like:
Alright, let's build it!
-
Create a new Project automation rule in the project you're interested in sending the morning report from (you can access the Project automation section from the Project Settings)
-
Use the Scheduled trigger for the rule
-
Set the rule to use a cron expression and select the option for "simply run the conditions and actions without providing issues". Example:
-
Set the details for the cron expression. If you’re unfamiliar with cron, you can see how the statements are constructed in our documentation. You can also use a tool like Crontab Guru to get the details right, but note that Automation for Jira (and Jira in general) has a seconds argument, so you will run into an error if you just copy/paste from Crontab Guru without putting an extra 0 at the beginning of your expression. The timestamp is in UTC as well, so you'll need to consider the timezone of your team.
For teams in the US Eastern timezone, this expression will run every weekday morning at 7:00am:
0 0 12 ? * MON-FRI
Whereas teams in Europe may want something like this:
0 0 6 ? * MON-FRI
Click the blue Save button when the cron expression is ready.
-
You should now be on the page to add a component. Select the Branch rule component from the options here.
-
Under the “Type of related issues” dropdown, select the JQL option.
While writing the JQL, you’ll want to use the closed statuses for your project’s workflow, and use the “Insert account id” tool to choose one of the users you want to send issues to. The JQL you wind up with might be something like
status not in (Done) and assignee = 555resolved-atlassian-account-id555
Click the blue Save button when the JQL is filled in.
-
Now choose the “New action” option on the add component screen. This should insert the action under the “For JQL” branch you just configured in the rule. Choose the Send Slack message option from the available actions.
-
Add details here to send the Slack message. Here are some pointers -
Webhook URL: use the “configure an incoming webhook” link below the field to generate a URL from your Slack admin panel
Message: Copy and paste this message for a short and clean message:
<{{issue.toUrl}}|*{{issue.key}}* {{issue.summary}}>
{{issue.description}}
Channel or user: If you don’t put anything here, it will use the channel you configured the webhook for. I would recommend using the userID of the Slack user that matches the assignee you set up in step 6.
Click here for a pointer if you need help finding a Slack user’s ID.
Protip: you can keep using the same webhook URL even if you use different userIDs
Click the blue Save button when you’ve got this step finished.
-
Repeat steps 5 to 8 for each user you want to send the morning list to.
- Once you're satisfied, give the rule a name and hit that blue "Turn it on" button.
You’re all set! The users you’ve configured will now get a list of unclosed issues assigned to them in Slack each morning. They can click the issue key / summary to be taken to the issue in Jira.
To extend this out, you can modify the JQL used to filter the issues. For example, you might be interested in reminding assignees about issues that have been open for a few days, so you might add and created > startOfDay(-5) to show them issues that were created more than 5 days ago. Or maybe a priority based filter to show them the most urgent issues! Once the basics are in place, you can get creative with the issues you'd like to raise the visibility on.
3 comments