Add comment on issue create trigger
Table of Contents
Let us continue developing apps using Forge.
1. Create the app.
forge create
Name: comment-issue-app
Category: Triggers and Validator
Template: product-trigger
2. App permissions
For adding comment we need to add scope to the manifest.yml the following lines.
permissions:
scopes:
- 'write:jira-work'
So the overall manifest.yml look like this.
permissions:
scopes:
- 'write:jira-work'
modules:
trigger:
- key: comment-issue-app-hello-world
function: main
events:
- avi:jira:created:issue
function:
- key: main
handler: index.run
app:
id: ari:cloud:ecosystem::app/9a2232eb-b238-23ed0-8ab0-234f2f2
name: comment-issue-app
3. Deploy and install.
Run forge deploy and then forge install.
Finally run sudo forge tunnel to ensure that further code changes are redeployed for you and you can also monitor the terminal.
4. Create an issue
The code in the index.jsx will listen for the issue create event and will display in the console.
export async function run(event, context) { console.log('Hello World!'); }
If you see "Hello World" in your terminal then good news :).
5. Install @forge/api
This is needed to make REST API calls.
npm install @forge/api
6. Add code to add comment using REST API
Copy the code from this page: https://developer.atlassian.com/platform/forge/automate-jira-using-triggers/
7. TODO User not working
When I changed the code to use .asUser instead of .asApp() then I got the following error.
ERROR 15:25:13.396 03a32d7dca3a6078 [NEEDS_AUTHENTICATION_ERR: Authentication required] {
serviceKey: 'atlassian-token-service-key'
}