Skip to main content
Skip table of contents

Use Jira Tickets to Drive Deployments

In this guide, you'll learn how to configure Jira Automation and Golive to manage and track deployments directly from Jira tickets.

This setup enables you to automate environment status updates and deployment actions in Golive based on transitions in Jira issues, improving release coordination and visibility across your organization.


Understand the Solution

Numerous organizations use Jira tickets to manage and track their deployment requests. This approach is particularly effective when coordinating with multiple stakeholders for requesting, approving, and executing application deployments to different environments.

By combining Jira Automation with Golive, you can automate how Environment Statuses and deployments are updated — directly from Jira transitions.

The examples below are not just a starting point; they're designed to serve as a foundation that can be tailored to your unique needs and workflows, thereby optimizing your release management strategies. Whether you're a seasoned release manager or new to the role, these resources can empower you to streamline your deployments and deliver quality results more efficiently.


Requirements

  • Golive Cloud installed on Jira Cloud.

  • A Jira project where deployment requests will be managed.

  • Admin permissions to create issue types, workflows, and automation rules.

Info

This configuration has been tested on Jira Cloud, but it should also work on Jira Data Center.


Configuration Overview

You will need to create:

  • One custom Issue Type called “Deployment Request”

  • A dedicated Workflow for deployment tracking

  • Four Jira Automation Rules:

    • In Progress (updates Target Environment to “Deploy”)

    • Successful Deployment (creates deployment and marks issues as deployed)

    • Failed Deployment (updates Target Environment to “Down”)

    • Cancellation (rolls back a previously created deployment)

Issue Type

A dedicated issue type called “Deployment Request” is used to track all deployments to Test and Production environments. Several fields are defined:

  • Deployed Version: A single value “Jira Version” custom field.

  • Target Environment: A single value Environment Custom Field.

  • Other optional fields, like the “Due date” in the screenshot below

Example of “Deployment Request” Screen

Workflow

A specific workflow is used to track deployment requests and it can be adapted to your needs:

Example of “Deployment Request” Workflow


Jira Automations

We are using 4 Jira Automation Rules:

  1. When the Request transitions from “In Review” to “In Progress”

    • The Target Environment status is updated to “Deploy

  2. When the Request transitions from “In Progress” to “Done” (Deployment Successful)

    • The selected “Deployed Version” is deployed to the selected “Target Environment” in Golive

    • The Jira issues marked as Done and fixed in the “Deployed Version” are automatically marked as deployed in Golive and Jira

    • The Target Environment status is updated to “Up

  3. When the Request transitions from “In Progress” to “Canceled” (Deployment Failed)

    • The Target Environment status is updated to “Down

  4. When the Request transitions from “Done” to “Canceled” (Cancel Deployment)

    • We rollback by deleting the deployment in Golive and in the Jira issues that were marked as deployed


Configuration Steps

Step 1: Create the “Deployment Request” Issue Type

If you are using a company-managed Jira Project, the following steps should be performed by a Jira Admin:

  1. Create a new Issue Type called Deployment Request.

  2. Add the following fields:

    1. Deployed Version: A single value “Jira Version” custom field.

    2. Target Environment: A single value Environment Custom Field.

  3. Create your Workflow and assign it to your “Deployment Request”.

If you are using a team-managed Jira Project, you just need to be Project Admin in order to create this new “Deployment Request” issue type and define a workflow.

Step 2: Create the “Deployment Request – In Progress” Automation Rule

This rule updates the Target Environment status to Deploy when the request transitions from “In Review” to “In Progress.”

Jira Automation Configuration Example

1. Trigger

When issue transitions from In ReviewIn Progress

2. Issue Type Condition

Issue type = Deployment Request

3. Send Web Request (Get Target Environment ID)

Web request URL:

CODE
https://golive.apwide.net/api/customfield/environment/selected?issueKey={{issue.key}}&customfieldName={{#urlEncode}}Target Environment{{/}}

“API-Key” Header:

Generate a Golive API Token and paste it as value.

4. Create variable

Variable name:

CODE
environmentId

Smart value:

CODE
{{webResponses.last.body.items.id}}

5. Log action

Log message:

CODE
environmentId: {{environmentId}}

6. Send web request (update Target Environment status)

Web request URL:

CODE
https://golive.apwide.net/api/status-change?environmentId={{environmentId}}

api-key” header: paste the previously generated Golive API Token

Custom data (make sure the status exists in your configuration):

CODE
{
  "name": "Deploy"
}

Step 3: Create the “Deployment Request – Successful” Automation Rule

This rule runs when a deployment request transitions from In Progress to Done (Deployment Successful).

It performs the following actions:

  • Deploys the selected Deployed Version to the Target Environment in Golive.

  • Marks related Jira issues as deployed in both Golive and Jira.

  • Updates the Target Environment status to Up.

Jira Automation Configuration Example

1. Trigger

When issue transitions from In ProgressDone

2. Condition

Issue type = Deployment Request

3. Send Web Request (Get Target Environment ID)

Web request URL:

CODE
https://golive.apwide.net/api/customfield/environment/selected?issueKey={{issue.key}}&customfieldName={{#urlEncode}}Target Environment{{/}}

“api-key” header: Paste the previously generated Golive API Token

4. Create Variable

Variable name:

CODE
environmentId

Smart value:

CODE
{{webResponses.last.body.items.id}}

5. Log Action

Log message:

CODE
environmentId: {{environmentId}}

6. Lookup Issues

JQL:

CODE
fixVersion in ({{issue.Deployed Version}}) and StatusCategory = Done

7. Create Variable

Variable name:

CODE
issueKeys

Smart value:

CODE
{{lookupIssues.key.asJsonStringArray}}

8. Log Action

Log message:

CODE
issueKeys: {{issueKeys}}

9. Send Web Request: Update Deployment of Target Environment

Web request URL:

CODE
https://golive.apwide.net/api/deployment?environmentId={{environmentId}}

Custom data:

JSON
{
  "versionName": "{{issue.Deployed Version.name}}",
  "issueKeys" : {{issueKeys}}
}

“api-key” header: Paste the previously generated Golive API Token

10. Create Variable

Variable name:

CODE
deploymentId

Smart value:

CODE
{{webResponses.last.body.deploymentId}}

11. Log Action

Log message:

CODE
deploymentId: {{deploymentId}}

12. Set Entity Property

We are storing the deployment ID with the Jira issue, in order to delete it in case of a future cancellation.

Property key:

CODE
apwDeploymentId

Property value:

CODE
{{deploymentId}}

13. Send Web Request: Update Target Environment Status)

Web request URL:

CODE
https://golive.apwide.net/api/status-change?environmentId={{environmentId}}

“api-key” header: Paste the previously generated Golive API Token

Custom data:

Important

Make sure the status exists in your configuration.

CODE
{
  "name": "Up"
}

Step 4: Create the “Deployment Request – Failed” Automation Rule

This rule updates the Target Environment status to Down when the deployment request transitions from In Progress to Canceled.

Jira Automation Configuration Example

1. Trigger

When issue transitions from In ProgressCanceled

2. Issue Type Condition

Issue type = Deployment Request

3. Send Web Request: Get Target Environment ID

Web request URL:

CODE
https://golive.apwide.net/api/customfield/environment/selected?issueKey={{issue.key}}&customfieldName={{#urlEncode}}Target Environment{{/}}

“api-key” header: Paste the previously generated Golive API Token

4. Create Variable

Variable name:

CODE
environmentId

Smart value:

CODE
{{webResponses.last.body.items.id}}

5. Log Action

Log message:

CODE
environmentId: {{environmentId}}

6. Send Web Request: Update Target Environment Status

Web request URL:

CODE
https://golive.apwide.net/api/status-change?environmentId={{environmentId}}

“api-key” header: paste the previously generated Golive API Token

Custom data (make sure the status exists in your configuration):

CODE
{
  "name": "Down"
}

Step 5: Create the “Deployment Request – Cancellation” Automation Rule

This rule rolls back a previously created deployment when the request transitions from Done to Canceled.

It performs the following actions:

  • Deletes the deployment in Golive and Jira.

  • Updates the Target Environment status to Down.

1. Trigger

  • When issue transitions from DoneCanceled

2. Issue Type Condition

Issue type = Deployment Request

3. Create Variable

Variable name:

CODE
deploymentId

Smart value:

CODE
{{issue.properties.apwDeploymentId}}

4. Log Action

Log message:

CODE
deploymentId: {{deploymentId}}

5. Send Web Request: Delete the Deployment to Rollback

Web request URL:

CODE
https://golive.apwide.net/api/deployment/{{deploymentId}}

“api-key” header: paste the previously generated Golive API Token


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.