Connect: Trouble getting "Hello World" to run

Hello fellow devs,

I’m currently trying to get a Connect app running and I was following this guide on how to: https://developer.atlassian.com/cloud/jira/platform/getting-started-with-connect/

Unfortunately I can’t seem to get it running, as I always get this Error:
image

My ngrok has its auth-token supplied and I changed the URL in the .json according to the URL supplied when tunneling. Is there anything I’m missing?

Thanks in advance.

Hi @LeroyElendt

Do you see any request come in? ngrok logs this when you start the tunnel using ngrok ... command. You should see a request for the /atlassian-connect.json endpoint.

If you don’t see this, then maybe you have a typo in the url when you install the app in your Jira instance.

If you do see the request, then maybe the connect app log shows some details.

Cheers,
Mark

2 Likes

Hi Mark,

thanks for taking your time to reply. The only time I see some action happening in my ngrok/http-server log is when installing the app on my instance. When opening the app there is nothing happening.

With “connect app log” you’re referring to my local console? Currently there is nothing logged there because I’m only serving a simple .html file. Or is there another location where I can look for logs?

Greetings.

Hi @LeroyElendt ,

Is the install response 200 OK? If not that could be an issue to look into.

Yeah, any log can be access or application log. But if you are only serving a html file then there may not be a log.

If installation works and the app is listed on your Jira instance, then you can look at the modules within the atlassian-connect.json Make sure the baseUrl and module url combined actually result in the html being served. If you are working on the guide, then you can check if the module hello-world is accessible. I usually take the following approach:

  1. Access baseUrl+module:url in this case https://123456689.ngrok.app/helloworld.html (replace 123456789.ngrok.app with your actual ngrok tunnel url)

If does work, you likely need to fix the http server hosting the html file, otherwise next step

  1. Access https://{jira-instance-name}.atlassian.net/plugins/servlet/ac/{app-key}/{module-key} in this case https://[your-instance-name].atlassian.net/plugins/servlet/ac/com.example.myapp/hello-world

If this doesn’t work, then there may be an issue in descriptor, this can be the app key, app baseUrl and module url elements. Check them all and make sure the http server is hosting the correct file, take a look at https://123456689.ngrok.app/atlassian-connect.json

  1. Install the app again and refresh the page after the install has completed. Then locate the place where your module should be listen and act on it (click, open, etc) to see if it is working.
2 Likes

Hi Mark,

thanks again for your help.

Yes it shows a 200. Everything seems to be going according to plan.

This actually serves the file and I see the Hello World just as I would expect.

I reverted the atlassian-connect.json back to how it was in the tutorial (except for the baseUrl), because I thought maybe my key has some conflict or something. In this file its just the generalPages module. And still, even after reinstalling I cant seem to get my html file to be displayed. I’m getting quite desperate here. I also tried another reverse-proxy because I thought it might be an ngrok issue but nothing seems to help :frowning:

Cool that is one :heavy_check_mark:

:heavy_check_mark: number two

Do you see the menu item in the top, assuming you reverted to the generalPage section "location": "system.top.navigation.bar"?
If you see it, what link does it generate?
What you can also try is using the developer console of your browser to debug what requests are send.

To me it doesn’t sounds like a ngrok issue, but an issue with the atlassian-connect.json and how the links resolve to your app.

Does the correct baseUrl list in the atlassian-connect.json? And are you sure the correct version of the file is served by the ngrok tunnel?

2 Likes

Hi and thanks again Mark,

Yes I can see it and it leads to this: - Jira

I checked that and there is a lot of requests being sent, but I don’t really know what to look out for. There is none that goes to my ngrok-tunnel. Also there is nothing happening on my end here, the .html-file is never requested, the only thing I ever see here, is when installing the plugin and then it gets quiet.

I’ll add two screenshots from my configuration:

This is from the ngrok tunnel inspect, it shows exactly the file that should be served:

The helloworld.html that is not being requested/served:

Greetings and thank you very much.

It’s me again,

on suggestion by my boss I deployed this “plugin” on a cloud hoster (I used netlify, but it shouldn’t matter). I installed it and it was working like you’d expect. So with some deduction I can only assume that ngrok is not working to develop for connect and I’ll continue to use a cloud hoster even though it adds an extra step.

Thanks for you help nonetheless Mark.

1 Like

Sure thing @LeroyElendt good to read you where able to move forward.

Maybe there is a blocker for ngrok in your work network infrastructure. I have read that ngrok can be blocked by firewall rules a while back.