Clarification On Jira Cloud Addons

I am looking for some clarification on how instances for Jira Cloud Addons actually function when deployed.

I have followed the hello world tutorial using the Node.JS ACE framework, and this works well now on my development instance, all other examples I can find pretty much seem to be for server instances, or so it seems. I notice that the Hello world example self installs to my developer instance when I run it. but all the other ones (which I assume are server) you need to point it to the JSON descriptor file to install it, but all of these cannot be installed, the installer simply fails to fetch the JSON file.

Is this self installing behaviour the correct way to develop Jira Cloud Addins, and how does it work when it is added to the market place. The example requires me to give it the credentials for my developer instance. Ultimately however I want it installed on my actual instance, how does this work?

I can find very little in the way of information and guides for developing cloud add ins and deploying them to the market place after testing on a development instance.

Any advice is appreciated.

This is the tutorial I was referring too, with regards to not being able to add it to my developer instance… It seems it is a Cloud tutorial, but the step “4.Install the app in your development Jira instance.” How? my server obviously works as I can deploy the hello world application without issue, it self installs and runs fine but this does not work at all.

Hey Michael, what url are you trying to pass to UPM manager (you said it’s failing to fetch descriptor)

The self installing feature is just for development, so you don’t have to reinstall your add-on when descriptor is changed. At the end you will need to host your application on some server or SaaS solution like Heroku. When publishing on marketplace you would pass url to the descriptor to marketplace and you’re done.

It might be not working for you if you are passing wrong url, mb? Make sure you pass ngrok generated url, not localhost.

1 Like

Hi Alexander,

Thanks for the advice, it was most helpful… With your advice and knowing it was supposed to work, I managed to track down the cause of the issue.

I am not using ngrok, as I have my own server that I am hosting it on, it was being hosted on a nginx endpoint, and there was an issue with the uri forwarding there, that meant it was being forwarded to the wrong place… I now have it recognising the json, and is at least attempting to install, although it seems to fail at the last stage… giving the indication that it received a 404 response. upon looking at the server logs its seems to be related to post command “POST /installed?user_key=admin HTTP/1.1”.

Not sure what the actual cause is yet.

And its installed, just had to change the /installed endpoint in the atlassian-connect.json to include the actual uri of the addon… and good to go

1 Like