Answers to common questions to the App Migrations team

Hi Team,

We’ve been working over the last few months to get App Migrations ready for general release and I through I’d do a post about some of the common questions we see and their answers.

cloudMigrationAssistantCompatibility and the marketplace API
When updating marketplace with your migration information using the create or update migration info api

the value for cloudMigrationAssistantCompatibility isn’t the minimum version of JCMA or CCMA, it’s the minimum version of your app that supports App Migration. This helps App Assessment determine if an upgrade is required for App Migration.

We use semantic versioning, and ignore the build information at the end of the version number. So, if you have 2 versions of your app for Jira 7 and Jira 8 that have very different version numbers, say

  • Jira 7 with version 1.5.0
  • Jira 8 with version 2.5.0

and they both support App Migration, then you’ll need to change your versions to something like

  • Jira 7 with version 3.0.0-jira7
  • Jira 8 with version 3.0.0-jira8

and use the marketplace interface to set a minimum and maximum Jira version for each app.

After you update the API, you may find updates do not appear in Confluence or Jira. We cache the results, so clearing the system cache in admin or restarting will resolve this issue.

Progress reporting
When running App Migration, you may notice that the migration never stops running in the user interface and always says RUNNING. If you have an implementation of onAppMigrationStarted() then when the migration has completely finished and you have received all the data you have uploaded, then you must settle the transfer with a progress status of SUCCESS, FAILED or INCOMPLETE using the progress API. Once one of these status has been sent through Connect, then the transfer is settled (i.e. ended) and you cannot do any more transactions on it (e.g. download data.) The progress status is not available inside your app, it is a user interface interaction only.

Feedback API
Along side progress reporting, if you need to send information back to your app then you can use the feedback channel API. The feedback channel API is not related to the user interface, and is for sending blobs of data back to the server app. Examples might include instructions to send specific information or update the internal state of the app.

We’ll be updating this post and the documentation over the next few weeks to further clarify these and other points, but don’t hesitate to ask any questions here or through our regular support channels.