Google PubSub integration to Jira

This article describes how to connect Jira to Google PubSub to publish to a topic and to consume a topic.

 Instructions

Prerequisites;

  1. Follow the guide here Google Authentication Setup to setup the OAuth2 connection

  2. Follow this guide to create a pubsub topic https://cloud.google.com/pubsub/docs/admin

 

 

 

 

1

Click Create Topic

2

Enter a topic name

 

POST data to PubSub from Jira via iHub

 

 

 

 

 

1

Click on Integrations

Click Create Integration

 

2

Enter a name. Note that the integration is disabled until we toggle the enabled flag.

3

Click Trigger

Select Issue event

Select Issue created

Add an JQL to filter when to trigger

 

4

Click Add new Action

Select Web Action

5

Enter a name of the action, can be anything.

Select POST

Enter the url below and change the TOPIC_ID to be the one you used. The messages in the request will be published on this topic. Format is projects/{project}/topics/{topic}.

https://pubsub.googleapis.com/v1/{TOPIC_ID}:publish

Select PubSub [OAuth2] created in prerequisite tutorial here Google Authentication Setup

Enter body

More on how the body can be structured is found here https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.topics/publish

{ "messages": [ { "data": "{{issue.toString}}", "attributes": { "issuekey": "{{issue.key}}", "projectKey": "{{issue.project.key}}" } } ] }

 

6

Save the integration

Goto the project that match the JQL for the trigger and create an issue.

 

Subscribe to data from PubSub from Jira via iHub

 

 

 

 

1

Click on Integrations

Click Create Integration

 

2

Enter a name. Note that the integration is disabled until we toggle the enabled flag.

 

3

Click Trigger

Select Issue event

Select Issue updated

Add an JQL to filter when to trigger

 

4

Click Add new Action

Select Web Action

5

Enter a name of the action, can be anything.

Select POST

Enter the url below and change the TOPIC_ID to be the one you used. The subscription from which messages should be pulled. Format is projects/{project}/subscriptions/{sub}.

https://pubsub.googleapis.com/v1/{subscription}:pull

Select PubSub [OAuth2] created in prerequisite tutorial here Google Authentication Setup

Enter body

More on how the body can be structured is found here Method: projects.subscriptions.pull  |  Pub/Sub Documentation  |  Google Cloud

 

6

Save the integration

Goto the project that match the JQL for the trigger and update an issue.