Dev Day 2020 On-Demand Content + Q&A

Hi everyone! Thank you all again for attending Dev Day 2020. For those of you who registered and attended, all content is now available on-demand at this link: https://events.atlassian.com/teamtour20/v/s-318776

You asked a lot of really great questions, and while we tried to answer them all, there were some we couldn’t get to on the day. We’ve followed up internally for some answers and have posted them all below.

And remember, you can always follow-up or leave feedback on Forge by starting a topic here, or creating an issue on the public Forge feedback Jira project: https://ecosystem.atlassian.net/browse/FRGE

Cheers,
Michael

Will there be analytic features about usage of the app / features?
Yes. We are exploring what insights about app usage developers need most and are very keen to hear more about what our developer community considers to be of the highest importance.

How do you test a Forge app at scale?
Assuming “at scale” is referring to some kind of CICD flow, the only current way to achieve this is via integration/synthetic tests. Forge does not provide a framework for this today so it is the developers responsibility to provide this tooling.

Will post functions soon be available in Forge? And if yes, will they be transactional like on Server?
Post functions are not available in Forge today but we will likely support them in future. However, making them transactional is almost certainly not in the plan.

Is logging to a log file the only way to debug/profile a Forge app?
Currently, forge tunnel and forge logs are the only tools officially provided to debug Forge apps.

Is there any way to quickly assess if a functionality is doable through forge or not?
It really depends on the functionality, but here are 3 things to try:

  1. Tell us what you’re trying to build :smiley: just post right here in the Forge Community.
  2. Skim a few example apps to get a sense of what has been built so far:
    https://codegeist.devpost.com/submissions/search?utf8=✓&filter[which+category+are+you+entering+your+application+into%3F][]=built+with+forge
    and
    https://developer.atlassian.com/platform/forge/example-apps/
  3. Skim the reference (be sure to check the different tabs): https://developer.atlassian.com/platform/forge/manifest-reference/

e2e testing is very tedious and unreliable in Atlassian Cloud apps because of iframes. Will Forge have any features to better cater for e2e tests?
In the future we will likely put more emphasis on the testability of Forge apps although at this stage there are no concrete plans to support this.

The private distribution option seems to be tied to an individual developer/personal account - will there be an option to do so as an app vendor/company/organization as well?
The design of private app distribution will take this into account, and will not be affected by individual vs company.

Can the business process of the app be done on the server instead of client? Also, in case of updating multiple entities at the same time, is it possible to update inside a transaction?
All operations on data - like calling products REST APIs (like Jira REST API) or using Forge properties or storage APIs are done on server side. To simplify: on Forge lambda which executes the app code.

There are no distributed transactions available in Forge, while using products APIs or properties/storage APIs.

How is the authentication from the forge side against connect REST api secured? do we have to provide fix authentication in forge code? there was none in the fetch command
Forge completely takes care of authentication for you using the asUser() or asApp() chain function call.

In this simple example, You waited very long for validation to revoke transition. Do You have any plans to make it faster :slight_smile: ?
The example made a call to an external server, which is probably not the best way to use Forge.

As of today, calls to an external system are slow. Unfortunately there is no way around this. One of the ways to solve this could be using caching or use App Storage APIs to store this kind of data.

Any plans to make an integration between Forge and Data Center apps API?
No. We may consider this in future but we are very much focused on Cloud.

Should we expect apps to get badges and other kudos for the robustness of their migration?
Marketplace will show which apps have documented and automated migration paths - can’t say specifically if it will be a badge but expect migration path details on the listing.

For a roadmap, see: https://trello.com/c/b29mmATz/165-marketplace-ui-to-support-server-to-cloud-migrations

How are you thinking of supporting multiple versions of the Forge API?
We are still exploring options for this and cannot provide anything concrete at this stage.

9 Likes