vitaliy@leanconvert.com

Vitaliy Sobur
Ukrainian
Doing Javascript
R&D Engineer



The #1 software development tool
used by agile teams
Jira Cloud
&
Jira Server
Jira Cloud
- Integrated, hosted versions of all popular Atlassian tools
- Toggle applications on or off
- Works with Google App
- It's secure
- It's affordable (price starts at $10/mo)
Pros
Jira Cloud
- Admin restrictions
- Some add-ons are not available
- No file or database access
- User Cap (no more than 2000 users)
- Poor customisation (domain name, themes)
- Disk Storage Limit
Cons
Integrating with JIRA Software Cloud
Atlassian Connect
Building Blocks
Jira Software Cloud REST API
Webhooks
Jira Software modules
for the Integration




Atlassian Connect
Framework

Add-on Descriptor

atlassian-connect.json
Jira Cloud
Static Add-on
Atlassian Connect
REST API
Webhooks
Modules
Entity Properties
Add-on Descriptor
Recap
Getting Started
Setup
- Get Atlassian Cloud Instance (go.atlassian.com/cloud-dev)
- Sign in and complete the setup wizard
- Enable development mode
- Navigate to JIRA administration (cog icon in the header) > Add-ons > Manage add-ons.
- Scroll to the bottom of the Manage add-ons page and click Settings.
- Select the Enable development mode checkbox.
Development Jira Instance
Setup
- Install node.js
- Install http-server globally
- Install ngrok globally
Development Environment
Build Basic Add-on
Define Descriptor
{
"name": "Hello World",
"description": "Atlassian Connect add-on",
"key": "com.example.myaddon",
"baseUrl": "https://143853ab.ngrok.io",
"vendor": {
"name": "Leanconvert Team",
"url": "http://example.com"
},
"authentication": {
"type": "none"
},
"modules": {
"generalPages": [
{
"url": "/index.html",
"key": "hello-world",
"location": "system.top.navigation.bar",
"name": {
"value": "Greeting"
}
}
]
}
}Build Basic Add-on
Create an App
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="//aui-cdn.atlassian.com/aui-adg/5.9.12/css/aui.min.css" media="all">
</head>
<body>
<section id="content" class="ac-content">
<div class="aui-page-header">
<div class="aui-page-header-main">
<h1>Hello World</h1>
</div>
</div>
</section>
<script src="https://vitali-demo.atlassian.net/atlassian-connect/all.js"></script>
</body>
</html>
http-server -p 8000
ngrok http 8000
Text
- Run http server
- Run ngrok
{
"baseUrl": "https://1d70591b.ngrok.io"
}- Update `baseUrl`
Build Basic Add-on
Deploy the Add-on
- Go to Jira and click cog menu > Add-ons
- Click Manage add-ons > Upload add-on
- Paste link to your add-on descriptor
(e.g. https://<ngrok-url>/atlassian-connect.json) - Upload
- Reload the page
- Navigate to Greeting
- It's working!
Build Basic Add-on
Install the Add-on
create-react-app

create-react-app
- npm i ngrok -g
- npx create-react-app my-addon
- Create atlassian-connect.js descriptor within the public/ directory
- Add all.js script to public/index.html
- npm start
- ngrok http 3000
- Update baseUrl with ngrok generated one
- Install the add-on

create-react-static-atlassian-connect-addon

Building Jira Addons with Atlassian Connect and React
By workslon
Building Jira Addons with Atlassian Connect and React
- 1,802