Hi folks, I'm working on creating an app that can be installed by an admin on a Jira instance and made available in the marketplace.
Initially, I built the app using Forge, which I successfully deployed in my cloud instance. The app included an Express.js server and several webhooks. However, I found out that the same app cannot be ported to Jira Data Center.
To address this, I recreated the app using `atlassian-connect.json` and installed it on the cloud, where it worked perfectly. I used the "Upload App" functionality in the UI and provided the path to `atlassian-connect.json`. Next,
I installed a Data Center instance on my local machine and attempted to install the app using the same `atlassian-connect.json` and "Upload App" functionality. How do I create an app for Data Center? Is the only option to use a P2 plugin?
Given that the original app was built in Express.js, will I need to recreate the entire app in Java for it to be used on Data Center, while maintaining the Forge/Atlas Connect app for the cloud? It feels like a huge wasted effort. How do teams create apps that can be used in both places?
I must be missing something obvious. Please help me identify where I'm going wrong. Thanks.
Yes. P2 is the only option for Data Center.
Note that there are developers who build a P2 app that:
With this technique, you can reach a high grade of code reuse between Cloud and DC. On Cloud, your app is still JS/TS and you call the Jira Cloud REST API instead of the Jira Data Center REST API.
There are variants of this technique.
Another variant could be implementing the core of the app in Java. It is "native" in P2. On Cloud, you would deploy it to AWS Lambda functions and make calls from the front-end to the lambdas.
Yeah this sounds reasonable. For me, most of the stuff is receiving a webhook response form jira so nodejs wont really help. But good suggestion.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I've always done this in reverse, I would build an app for server/data center then port it to the cloud. I'm not a heavy app developer, more a one-off depending on client needs.
The docs to follow for datacenter apps are here:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Ok. Thanks for the insights. p2 plugins are the only way to create apps for data centers? Its mostly written in Java, and porting them over for cloud apps will essentially mean the cloud apps will also have java core (as long as we dont want to duplicate code). Is my understanding correct?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.