Automation in Jira for beginners

Automating Jira
Elad Ben-Noam
Agile Tools Consultant
@AgileSparks
AgileSparks
2 |
❖ We help companies improve by adopting agile principles and
practices
❖ We provide training and coaching to all organizational levels,
from high management to developers
❖ Our team consists of Agile professionals with diverse expertise
❖ Global solutions – US, Israel, India
What is Automation?
What pops when you think of
Automation?
All these apps are relevant when our goal is to connect 2 separate apps
Integrations
Integrating these apps is relevant when our goal is to create a
sync between Jira’s data and the other apps data
What are we going to talk about?
• Helping teams become more productive
• Cataloging issues for quicker search
• Achieving much more details about the issues life cycle
• Making the tool work for the users
Individuals and interactions
over
processes and tools
From the Agile Manifesto
Automating (within) Jira
ScriptRunner Power Scripts
Automation
for Jira
Jira Plugin
• Big data of API commands to monitor/change almost anything in Jira
• Ability to create JQL* queries, with some scripting even recursive queries
• For example: query to find all epics with certain component and afterwards a query
to get all the children of those epics
• Ready to use “Postman Collections” with all REST API commands
• Provides some operations that are not allowed from the Jira UI
• Easy commands with user/password to get data (cloud: email/API key)
• Important Note: there are 2 different versions of API:
• Server / Data Center versions uses up to version 2
• Cloud uses up to version 3
* JQL - Jira Query Language
There are 3 ways of operating with Jira’s REST API:
1. Operating a script only when needed
2. Operating a script by schedule (daily/every hour/etc.)
3. Operating scripts by a listener
Webhooks
Webhooks enables you to get
notifications about changes in Jira
once it happens.
For example: you can get a
notification for creation / editing /
deletion of issues / sprint / boards
and more.
To get the data you need to setup
a listener to receive the data and
operate the script.
• Operates from within Jira
• Available for both Server and Cloud versions:
• For cloud you must upload the plugin to the marketplace and define as
private
• Jira’s code is in Java and that’s the preferred plugin language
• Today’s tools allows you to create with different language and transform the
code to Java
• Different from REST API way, a plugin can change the process itself
Jira Plugin
ScriptRunner Power Scripts
Traditional Scripting Apps
Advantages:
• Scripts with variety of functions
• Built-in scripts that enables quick functionalities
• Built-in advanced JQL functions
• Enhanced workflow conditions and validations
Traditional Scripting Apps
Disadvantages:
• Must have a Jira admin permissions to create/edit scripts
It’s complex!
most features require scripting knowledge
Automation for Jira
Created by Code Barrel
One of the top recommended apps in Atlassian’s marketplace
Code Barrel was acquired by Atlassian on Oct, 2019
Recently had been implemented in Jira Cloud as a built-in feature
Automation for Jira
Disadvantages:
• Advance functions has a learning curve
• Atlassian’s pricing can vary
Limited
You cannot do everything you wish to do in it
Especially when comparing to ScriptRunner that can do a lot!
Automation for Jira
Advantages:
• Any user in a project manager role can define automations
• Automations can be assigned to a single project or shared with many
• Easy debugging with mail notifications for every automation failure
Super Easy to use
Automation Process
Trigger
Filter
Action
Automation for Jira - Basic Functionalities
Trigger
Example:
Automation for Jira - Basic Functionalities
Filter
Example:
Tip!
Use “Related issues condition” if you want to filter by
parents/children data.
For example: continue automation if the parent epic of this
issue contains version “1.1” in the “fix version” field.
Automation for Jira - Basic Functionalities
Action
Example:
Automation for Jira - Basic Functionalities
Action
Example:
Automation for Jira - Basic Functionalities
Action
Example:
Automation for Jira - Basic Functionalities
Action
Rarely used but important actions:
Useful action when need to use a
value that was changed during the
same automation, see example:
X = 5
Y = 15 (3 times value of X)
During automation:
X  8
If we don’t use “re-fetch”:
Y  (5*3)=15
If we use “re-fetch”:
Y  (8*3) = 24
Useful actions when already using
ScriptRunner or using a listener
Automation for Jira - Basic Functionalities
Action
There is a possibility to use json
when editing issues.
2 cases that you would want to
use it:
1. When you are creating more
than 1 automation that should
edit the same fields or close to
the same fields
2. When the field you try to
change is not in the list of
fields
Automation for Jira - Advanced Functions
Smart Values
Smart Values
The ability to use fields values or part of them
For example:
Automation for Jira - Advanced Functions
Math Functions
Math Functions
Doing math calculation using fields values
For example:
Automation for Jira - Advanced Functions
Default Values
Default Values
Use default values in case a field is empty
May reduce failure of automations
For example:
| 0
Automation for Jira - Advanced Functions
And More…
Join values from a “list” field
Calculating time diff between 2
values
Converting a field into json format
Editing functions for text fields
And more…
{{issue.fixVersions.name.join(" - ")}}
// Produces “Version 2.0 – Version 3.0”
{{now.diff(issue.created).days}}
// Produces “3d 5h”
{{issue.fixVersions.name.asJsonObject("title").asJsonArray}}
// Produces
[{ "title": "Version 2.0" },{ "title": "Version 3.0" }]
{{issue.summary.toLowerCase().substring(0, 10).concat("!!")}}
Advanced Automation Process
Trigger
Filter
Action
Branch
Automation for Jira - Basic Functionalities
Branch Rule / Related Issues
• Enables editing related issues
and instead of the issue that
triggered the automation rule
• Can be used to copy data from
the trigger issue into the
related issues
Note!
Branch is not available on
“Automation for Jira – Server lite”
Automation for Jira
Automations
samples
Photo by Markus Spiske from Pex
Trigger
Filter
Branch
Filter on
branch
Action
Action Details
Trigger
with
query
Action 1
Action 2
Action 1 Details
Tips
Tips
1. Create an easy to view changes
When working on custom fields changes you may not always get the result
you expected. Use a dummy issue to check changes and make the change on
the “Description” field which is easy to view
2. Work Smart
If you are working with custom fields id’s, change the URL of the issue
From: <<URL>>/browse/YYY-123
To: <<URL>>/rest/api/2/issue/YYY-123
You’ll immediately get all the issue’s fields and ids.
Tips
3. Change a direction
Reached a dead end result? Throw away you line of thought and think of
a different way to approach the automation.
In most cases it works, in others not – the app is still a bit limited.
4. Recursion
You can create recursive automations, meaning: after one automation
rule run make a second automation rule run automatically.
(by default the option is disabled in the rule details to prevent infinite loop)
Automation for Jira
Available Options
• Jira Cloud:
• On basic plan you get total of 500 automation runs
• On premium plan you get 1000 automation runs for every paid user
• Purchasing – price is yet to be published (3 months free addiction)
• Jira Server / Data Center:
• Automation Lite – free plugin with restricted functionalities
• Full version – 30 days trial with full functionalities
Recommendations
Where should I start?
Good Luck!
Contact info:
Elad Ben-Noam
Elad @Agilesparks.com
1 de 41

Recomendados

Automation for JIRA - The Simplest Way to Automate Your Team and Project por
Automation for JIRA - The Simplest Way to Automate Your Team and ProjectAutomation for JIRA - The Simplest Way to Automate Your Team and Project
Automation for JIRA - The Simplest Way to Automate Your Team and ProjectBosnia Agile
730 visualizações15 slides
Jira training por
Jira trainingJira training
Jira trainingRahul Janghel
1.1K visualizações18 slides
Jira Basic Concepts por
Jira Basic ConceptsJira Basic Concepts
Jira Basic ConceptsMAKSTraining
6K visualizações12 slides
Go Jira por
Go JiraGo Jira
Go JiraPaul René Jørgensen
6.1K visualizações25 slides
Jira Training por
Jira TrainingJira Training
Jira TrainingUnmesh Ballal
2.9K visualizações20 slides
Jira overview por
Jira overviewJira overview
Jira overviewthanhlamct
2.1K visualizações40 slides

Mais conteúdo relacionado

Mais procurados

JIRA por
JIRAJIRA
JIRARajathi-QA
286 visualizações13 slides
Jira Dashboards por
Jira DashboardsJira Dashboards
Jira DashboardsRobin Surland
966 visualizações11 slides
JIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosys por
JIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosysJIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosys
JIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosysH2Kinfosys
4.6K visualizações16 slides
Advanced JIRA and Confluence por
Advanced JIRA and ConfluenceAdvanced JIRA and Confluence
Advanced JIRA and ConfluenceAshish Jain, CSM, Prince2 Practitioner
1.2K visualizações15 slides
Jira 101 por
Jira 101Jira 101
Jira 101Panji Gautama
3.3K visualizações12 slides
Jira as a Tool for Test Management por
Jira as a Tool for Test ManagementJira as a Tool for Test Management
Jira as a Tool for Test ManagementMaija Laksa
61.3K visualizações22 slides

Mais procurados(20)

JIRA por Rajathi-QA
JIRAJIRA
JIRA
Rajathi-QA286 visualizações
Jira Dashboards por Robin Surland
Jira DashboardsJira Dashboards
Jira Dashboards
Robin Surland966 visualizações
JIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosys por H2Kinfosys
JIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosysJIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosys
JIRA Introduction | JIRA Tutorial | Atlassian JIRA Training | H2kinfosys
H2Kinfosys 4.6K visualizações
Jira 101 por Panji Gautama
Jira 101Jira 101
Jira 101
Panji Gautama3.3K visualizações
Jira as a Tool for Test Management por Maija Laksa
Jira as a Tool for Test ManagementJira as a Tool for Test Management
Jira as a Tool for Test Management
Maija Laksa61.3K visualizações
Introduction to JIRA & Agile Project Management por Dan Chuparkoff
Introduction to JIRA & Agile Project ManagementIntroduction to JIRA & Agile Project Management
Introduction to JIRA & Agile Project Management
Dan Chuparkoff66K visualizações
Introduction To Jira Slide Share por Renjith V
Introduction To Jira Slide ShareIntroduction To Jira Slide Share
Introduction To Jira Slide Share
Renjith V9.4K visualizações
Introduction to jira por Khubaib Ahmed
Introduction to jiraIntroduction to jira
Introduction to jira
Khubaib Ahmed757 visualizações
Jira Agile por Peter Perger
Jira AgileJira Agile
Jira Agile
Peter Perger4K visualizações
Portfolio for JIRA & Kanban: How Thrillist Manages Their Product Roadmap por Atlassian
Portfolio for JIRA & Kanban: How Thrillist Manages Their Product RoadmapPortfolio for JIRA & Kanban: How Thrillist Manages Their Product Roadmap
Portfolio for JIRA & Kanban: How Thrillist Manages Their Product Roadmap
Atlassian14.7K visualizações
Use of Jira Confluence as Project Management Tool por Jipin Nakarmi
Use of Jira Confluence as Project Management ToolUse of Jira Confluence as Project Management Tool
Use of Jira Confluence as Project Management Tool
Jipin Nakarmi3.1K visualizações
Agile presentation por Rahul Chauhan
Agile presentationAgile presentation
Agile presentation
Rahul Chauhan845 visualizações
JIRA_Manual_Vol.1 por D Bagchi
JIRA_Manual_Vol.1JIRA_Manual_Vol.1
JIRA_Manual_Vol.1
D Bagchi283 visualizações
Jira fundamentals por Vitaliy Patsay
Jira fundamentalsJira fundamentals
Jira fundamentals
Vitaliy Patsay30.3K visualizações
Jira as a Project Management Tool por Paolo Mottadelli
Jira as a Project Management ToolJira as a Project Management Tool
Jira as a Project Management Tool
Paolo Mottadelli71.6K visualizações
Jira in action por Tan Tran
Jira in actionJira in action
Jira in action
Tan Tran2.8K visualizações
Introducing JIRA AGILE por Nishanth K Hydru
Introducing JIRA AGILEIntroducing JIRA AGILE
Introducing JIRA AGILE
Nishanth K Hydru17.1K visualizações
Introduction to Jira - Bug Tracking tool por Global SQA
Introduction to Jira - Bug Tracking toolIntroduction to Jira - Bug Tracking tool
Introduction to Jira - Bug Tracking tool
Global SQA1.8K visualizações
Introduction to JIRA por guestb67fcdb
Introduction to JIRAIntroduction to JIRA
Introduction to JIRA
guestb67fcdb4.1K visualizações

Similar a Automation in Jira for beginners

DevOps for service desk automation por
DevOps for service desk automationDevOps for service desk automation
DevOps for service desk automationavinashbalakrishnan2
135 visualizações37 slides
Toronto ACE Sept 2022.pptx por
Toronto ACE Sept 2022.pptxToronto ACE Sept 2022.pptx
Toronto ACE Sept 2022.pptxSusanHauth1
89 visualizações26 slides
AUG NYC Presentation Feb 13 Event por
AUG NYC Presentation Feb 13 EventAUG NYC Presentation Feb 13 Event
AUG NYC Presentation Feb 13 EventAUGNYC
681 visualizações84 slides
APEX Office Hours Interactive Grid Deep Dive por
APEX Office Hours Interactive Grid Deep DiveAPEX Office Hours Interactive Grid Deep Dive
APEX Office Hours Interactive Grid Deep DiveJohnSnyders
1.1K visualizações26 slides
Agile-plus-DevOps Testing for Packaged Applications por
Agile-plus-DevOps Testing for Packaged ApplicationsAgile-plus-DevOps Testing for Packaged Applications
Agile-plus-DevOps Testing for Packaged ApplicationsWorksoft
868 visualizações39 slides
Connector Corner: How Jira-and Open AI-support service issues in multiple la... por
Connector Corner: How Jira-and Open AI-support service issues in multiple  la...Connector Corner: How Jira-and Open AI-support service issues in multiple  la...
Connector Corner: How Jira-and Open AI-support service issues in multiple la...DianaGray10
98 visualizações13 slides

Similar a Automation in Jira for beginners(20)

DevOps for service desk automation por avinashbalakrishnan2
DevOps for service desk automationDevOps for service desk automation
DevOps for service desk automation
avinashbalakrishnan2135 visualizações
Toronto ACE Sept 2022.pptx por SusanHauth1
Toronto ACE Sept 2022.pptxToronto ACE Sept 2022.pptx
Toronto ACE Sept 2022.pptx
SusanHauth189 visualizações
AUG NYC Presentation Feb 13 Event por AUGNYC
AUG NYC Presentation Feb 13 EventAUG NYC Presentation Feb 13 Event
AUG NYC Presentation Feb 13 Event
AUGNYC681 visualizações
APEX Office Hours Interactive Grid Deep Dive por JohnSnyders
APEX Office Hours Interactive Grid Deep DiveAPEX Office Hours Interactive Grid Deep Dive
APEX Office Hours Interactive Grid Deep Dive
JohnSnyders1.1K visualizações
Agile-plus-DevOps Testing for Packaged Applications por Worksoft
Agile-plus-DevOps Testing for Packaged ApplicationsAgile-plus-DevOps Testing for Packaged Applications
Agile-plus-DevOps Testing for Packaged Applications
Worksoft868 visualizações
Connector Corner: How Jira-and Open AI-support service issues in multiple la... por DianaGray10
Connector Corner: How Jira-and Open AI-support service issues in multiple  la...Connector Corner: How Jira-and Open AI-support service issues in multiple  la...
Connector Corner: How Jira-and Open AI-support service issues in multiple la...
DianaGray1098 visualizações
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap... por Applitools
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Applitools1.7K visualizações
Migrating Lotus Notes Applications to Sharepoint Online with Nintex por Maarga Systems
Migrating Lotus Notes Applications to Sharepoint Online with NintexMigrating Lotus Notes Applications to Sharepoint Online with Nintex
Migrating Lotus Notes Applications to Sharepoint Online with Nintex
Maarga Systems579 visualizações
Testing for Logic App Solutions | Integration Monday por BizTalk360
Testing for Logic App Solutions | Integration MondayTesting for Logic App Solutions | Integration Monday
Testing for Logic App Solutions | Integration Monday
BizTalk360373 visualizações
Developing for the Atlassian Ecosystem por Alex Henderson
Developing for the Atlassian EcosystemDeveloping for the Atlassian Ecosystem
Developing for the Atlassian Ecosystem
Alex Henderson1.3K visualizações
Kill Administrator: Fighting Back Against Admin Rights por ScriptLogic
Kill Administrator: Fighting Back Against Admin RightsKill Administrator: Fighting Back Against Admin Rights
Kill Administrator: Fighting Back Against Admin Rights
ScriptLogic921 visualizações
Jira for DevOps - Loves Cloud por Loves Cloud
Jira for DevOps - Loves CloudJira for DevOps - Loves Cloud
Jira for DevOps - Loves Cloud
Loves Cloud23 visualizações
Selenium training in chennai por Thecreating Experts
Selenium training in chennaiSelenium training in chennai
Selenium training in chennai
Thecreating Experts113 visualizações
Boost your App with Gatling por Knoldus Inc.
Boost your App with GatlingBoost your App with Gatling
Boost your App with Gatling
Knoldus Inc.633 visualizações
The Top 5 Skills Enterprise Admins Need to Know por Atlassian
The Top 5 Skills Enterprise Admins Need to KnowThe Top 5 Skills Enterprise Admins Need to Know
The Top 5 Skills Enterprise Admins Need to Know
Atlassian6.7K visualizações
Denver Atlassian Community 5-minute Plugins por denveraug
Denver Atlassian Community 5-minute PluginsDenver Atlassian Community 5-minute Plugins
Denver Atlassian Community 5-minute Plugins
denveraug294 visualizações
Making software development processes to work for you por Ambientia
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for you
Ambientia645 visualizações
Rapise Overview Presentation (2019) por Inflectra
Rapise Overview Presentation (2019)Rapise Overview Presentation (2019)
Rapise Overview Presentation (2019)
Inflectra685 visualizações
BrightGen's Salesforce Summer 21 release webinar por brightgenss
BrightGen's Salesforce Summer 21 release webinarBrightGen's Salesforce Summer 21 release webinar
BrightGen's Salesforce Summer 21 release webinar
brightgenss76 visualizações
Optimus XPages: An Explosion of Techniques and Best Practices por Teamstudio
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best Practices
Teamstudio3.4K visualizações

Último

2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx por
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptxanimuscrm
14 visualizações19 slides
Unleash The Monkeys por
Unleash The MonkeysUnleash The Monkeys
Unleash The MonkeysJacob Duijzer
7 visualizações28 slides
Headless JS UG Presentation.pptx por
Headless JS UG Presentation.pptxHeadless JS UG Presentation.pptx
Headless JS UG Presentation.pptxJack Spektor
7 visualizações24 slides
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut... por
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...Deltares
7 visualizações28 slides
Sprint 226 por
Sprint 226Sprint 226
Sprint 226ManageIQ
5 visualizações18 slides
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols por
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - DolsDSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - DolsDeltares
7 visualizações23 slides

Último(20)

2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx por animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm14 visualizações
Unleash The Monkeys por Jacob Duijzer
Unleash The MonkeysUnleash The Monkeys
Unleash The Monkeys
Jacob Duijzer7 visualizações
Headless JS UG Presentation.pptx por Jack Spektor
Headless JS UG Presentation.pptxHeadless JS UG Presentation.pptx
Headless JS UG Presentation.pptx
Jack Spektor7 visualizações
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut... por Deltares
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...
Deltares7 visualizações
Sprint 226 por ManageIQ
Sprint 226Sprint 226
Sprint 226
ManageIQ5 visualizações
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols por Deltares
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - DolsDSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
Deltares7 visualizações
Agile 101 por John Valentino
Agile 101Agile 101
Agile 101
John Valentino7 visualizações
FIMA 2023 Neo4j & FS - Entity Resolution.pptx por Neo4j
FIMA 2023 Neo4j & FS - Entity Resolution.pptxFIMA 2023 Neo4j & FS - Entity Resolution.pptx
FIMA 2023 Neo4j & FS - Entity Resolution.pptx
Neo4j7 visualizações
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... por Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller38 visualizações
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J... por Deltares
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...
Deltares9 visualizações
The Era of Large Language Models.pptx por AbdulVahedShaik
The Era of Large Language Models.pptxThe Era of Large Language Models.pptx
The Era of Large Language Models.pptx
AbdulVahedShaik5 visualizações
Dapr Unleashed: Accelerating Microservice Development por Miroslav Janeski
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice Development
Miroslav Janeski10 visualizações
SAP FOR CONTRACT MANUFACTURING.pdf por Virendra Rai, PMP
SAP FOR CONTRACT MANUFACTURING.pdfSAP FOR CONTRACT MANUFACTURING.pdf
SAP FOR CONTRACT MANUFACTURING.pdf
Virendra Rai, PMP13 visualizações
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with... por sparkfabrik
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
sparkfabrik5 visualizações
Quality Engineer: A Day in the Life por John Valentino
Quality Engineer: A Day in the LifeQuality Engineer: A Day in the Life
Quality Engineer: A Day in the Life
John Valentino6 visualizações
EV Charging App Case por iCoderz Solutions
EV Charging App Case EV Charging App Case
EV Charging App Case
iCoderz Solutions5 visualizações
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge... por Deltares
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
DSD-INT 2023 Delft3D FM Suite 2024.01 2D3D - New features + Improvements - Ge...
Deltares17 visualizações
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft... por Deltares
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...
DSD-INT 2023 Process-based modelling of salt marsh development coupling Delft...
Deltares7 visualizações
Airline Booking Software por SharmiMehta
Airline Booking SoftwareAirline Booking Software
Airline Booking Software
SharmiMehta6 visualizações
Fleet Management Software in India por Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable11 visualizações

Automation in Jira for beginners

  • 1. Automating Jira Elad Ben-Noam Agile Tools Consultant @AgileSparks
  • 2. AgileSparks 2 | ❖ We help companies improve by adopting agile principles and practices ❖ We provide training and coaching to all organizational levels, from high management to developers ❖ Our team consists of Agile professionals with diverse expertise ❖ Global solutions – US, Israel, India
  • 4. What pops when you think of Automation? All these apps are relevant when our goal is to connect 2 separate apps
  • 5. Integrations Integrating these apps is relevant when our goal is to create a sync between Jira’s data and the other apps data
  • 6. What are we going to talk about? • Helping teams become more productive • Cataloging issues for quicker search • Achieving much more details about the issues life cycle • Making the tool work for the users Individuals and interactions over processes and tools From the Agile Manifesto
  • 7. Automating (within) Jira ScriptRunner Power Scripts Automation for Jira Jira Plugin
  • 8. • Big data of API commands to monitor/change almost anything in Jira • Ability to create JQL* queries, with some scripting even recursive queries • For example: query to find all epics with certain component and afterwards a query to get all the children of those epics • Ready to use “Postman Collections” with all REST API commands • Provides some operations that are not allowed from the Jira UI • Easy commands with user/password to get data (cloud: email/API key) • Important Note: there are 2 different versions of API: • Server / Data Center versions uses up to version 2 • Cloud uses up to version 3 * JQL - Jira Query Language
  • 9. There are 3 ways of operating with Jira’s REST API: 1. Operating a script only when needed 2. Operating a script by schedule (daily/every hour/etc.) 3. Operating scripts by a listener
  • 10. Webhooks Webhooks enables you to get notifications about changes in Jira once it happens. For example: you can get a notification for creation / editing / deletion of issues / sprint / boards and more. To get the data you need to setup a listener to receive the data and operate the script.
  • 11. • Operates from within Jira • Available for both Server and Cloud versions: • For cloud you must upload the plugin to the marketplace and define as private • Jira’s code is in Java and that’s the preferred plugin language • Today’s tools allows you to create with different language and transform the code to Java • Different from REST API way, a plugin can change the process itself Jira Plugin
  • 13. Traditional Scripting Apps Advantages: • Scripts with variety of functions • Built-in scripts that enables quick functionalities • Built-in advanced JQL functions • Enhanced workflow conditions and validations
  • 14. Traditional Scripting Apps Disadvantages: • Must have a Jira admin permissions to create/edit scripts It’s complex! most features require scripting knowledge
  • 15. Automation for Jira Created by Code Barrel One of the top recommended apps in Atlassian’s marketplace Code Barrel was acquired by Atlassian on Oct, 2019 Recently had been implemented in Jira Cloud as a built-in feature
  • 16. Automation for Jira Disadvantages: • Advance functions has a learning curve • Atlassian’s pricing can vary Limited You cannot do everything you wish to do in it Especially when comparing to ScriptRunner that can do a lot!
  • 17. Automation for Jira Advantages: • Any user in a project manager role can define automations • Automations can be assigned to a single project or shared with many • Easy debugging with mail notifications for every automation failure Super Easy to use
  • 19. Automation for Jira - Basic Functionalities Trigger Example:
  • 20. Automation for Jira - Basic Functionalities Filter Example: Tip! Use “Related issues condition” if you want to filter by parents/children data. For example: continue automation if the parent epic of this issue contains version “1.1” in the “fix version” field.
  • 21. Automation for Jira - Basic Functionalities Action Example:
  • 22. Automation for Jira - Basic Functionalities Action Example:
  • 23. Automation for Jira - Basic Functionalities Action Example:
  • 24. Automation for Jira - Basic Functionalities Action Rarely used but important actions: Useful action when need to use a value that was changed during the same automation, see example: X = 5 Y = 15 (3 times value of X) During automation: X  8 If we don’t use “re-fetch”: Y  (5*3)=15 If we use “re-fetch”: Y  (8*3) = 24 Useful actions when already using ScriptRunner or using a listener
  • 25. Automation for Jira - Basic Functionalities Action There is a possibility to use json when editing issues. 2 cases that you would want to use it: 1. When you are creating more than 1 automation that should edit the same fields or close to the same fields 2. When the field you try to change is not in the list of fields
  • 26. Automation for Jira - Advanced Functions Smart Values Smart Values The ability to use fields values or part of them For example:
  • 27. Automation for Jira - Advanced Functions Math Functions Math Functions Doing math calculation using fields values For example:
  • 28. Automation for Jira - Advanced Functions Default Values Default Values Use default values in case a field is empty May reduce failure of automations For example: | 0
  • 29. Automation for Jira - Advanced Functions And More… Join values from a “list” field Calculating time diff between 2 values Converting a field into json format Editing functions for text fields And more… {{issue.fixVersions.name.join(" - ")}} // Produces “Version 2.0 – Version 3.0” {{now.diff(issue.created).days}} // Produces “3d 5h” {{issue.fixVersions.name.asJsonObject("title").asJsonArray}} // Produces [{ "title": "Version 2.0" },{ "title": "Version 3.0" }] {{issue.summary.toLowerCase().substring(0, 10).concat("!!")}}
  • 31. Automation for Jira - Basic Functionalities Branch Rule / Related Issues • Enables editing related issues and instead of the issue that triggered the automation rule • Can be used to copy data from the trigger issue into the related issues Note! Branch is not available on “Automation for Jira – Server lite”
  • 35. Tips
  • 36. Tips 1. Create an easy to view changes When working on custom fields changes you may not always get the result you expected. Use a dummy issue to check changes and make the change on the “Description” field which is easy to view 2. Work Smart If you are working with custom fields id’s, change the URL of the issue From: <<URL>>/browse/YYY-123 To: <<URL>>/rest/api/2/issue/YYY-123 You’ll immediately get all the issue’s fields and ids.
  • 37. Tips 3. Change a direction Reached a dead end result? Throw away you line of thought and think of a different way to approach the automation. In most cases it works, in others not – the app is still a bit limited. 4. Recursion You can create recursive automations, meaning: after one automation rule run make a second automation rule run automatically. (by default the option is disabled in the rule details to prevent infinite loop)
  • 38. Automation for Jira Available Options • Jira Cloud: • On basic plan you get total of 500 automation runs • On premium plan you get 1000 automation runs for every paid user • Purchasing – price is yet to be published (3 months free addiction) • Jira Server / Data Center: • Automation Lite – free plugin with restricted functionalities • Full version – 30 days trial with full functionalities
  • 40. Where should I start?
  • 41. Good Luck! Contact info: Elad Ben-Noam Elad @Agilesparks.com

Notas do Editor

  1. אנחנו לא הולכים לדבר על הכלים האלה.