In this post I would like to share with you our JIRA automated workflow & how we made it,
actually, how we got to a situation where developers do not have to deal with unnecessary distractions (for example, moving tickets in jira and documentation within the JIRA ticket) .
all the actions that the developers made in the past in JIRA - now the actions are fully automated .
A Short Overview
This is a basic ALM flow :
Every stage send to JIRA a details about the code state(e.g. - development, CI , CD , Code-Review , Monitoring, etc. ) , according to the events, JIRA inserts to each ticket his development details and progress the ticket to the relevant status in the project .
For example: when developer creates a branch about his JIRA ticket by Smart-Commit, the ticket will progress to “In-Progress” status & the branch link will be presented in the ticket details.
Let's continue with a detailed ALM flow :
After making the automated JIRA workflow, the flow will look like this :
every stage in the ALM flow updates the JIRA project by events and provides the right status about your code (e.g. - where is your code right now ? Code-review ? CI ? Staging tests ? OR whats is the status of the Code-review / the CI ?)
In this workflow, developers are not using in JIRA , just watching their tasks , all the actions (e.g. moving ticket to next status) is happening automatically by the events.
Events #1, #2, #3 - received by Smart-Commit.
Events #4, #5, #6 - received by API requests.
NOTE: you can receive event #2 by 2 options:
1. In the CI stage by Jenkins JIRA plugin.
2. By Github after Merge action or "status" event (received by CI webhook in the Github) .
In addition to the JIRA ticket transitions, thanks to Smart-Commit you can view updates from Github or Bitbucket within the relevant ticket
These are the steps you need to make to get this great feature in your JIRA workflow:
1 To get the development details within your tickets & set triggers, please enable Smart-commit feature by this guide : https://confluence.atlassian.com/adminjiracloud/enable-smart-commits-776830276.html (available only on Github and Bitbucket) .
Smart-Commit usage guide : https://confluence.atlassian.com/fisheye/using-smart-commits-298976812.html
2. Edit your workflow and set trigger for each status you want.
3 Add to your CD jobs stage for JIRA API request (to progress the tickets to “Deployed Staging” status (when Staging deployment has been finished) and to release version of the project (at the end of the Production deployment).
Thats all ! These 3 steps will provide you a fully automated JIRA workflow !