Last updated Jan 1, 2024

Migration path readiness checklist

These are the steps you must perform to assess the readiness of your migration path. They will allow customers to successfully migrate their server app data to your cloud app.

Types of migration paths

To understand which steps to follow, first identify your app's migration path:

Fully automated

Step 1: Implement the 'Progress reporting' feature

  • Use the Status API to implement the progress reporting feature in your cloud app. This allows your cloud app to:
    • send a IN_PROGRESS status at regular intervals of every 10 - 15 minutes to inform the customer that the app migration is running and report on its progress
    • send a SUCCESS status when the app migration is complete
    • send a FAILED status if the app migration has encountered an error and can't be completed

The CMA user interface displays the progress of your app migration, on the Migration details screen, letting your customers know when your server app data has successfully migrated to their cloud site and is ready to use:

Migration details screen

Step 2: Test your 'Progress reporting' implementation

  • Test the progress reporting in the CMA. If you haven't published your migration path yet, enable dev mode to do this.

Step 3: Publish a new version of your server app to Marketplace

  • After you've tested your migration path, build your app and publish it to Marketplace. At this stage, your migration path availability still won't be displayed to customers.

Step 4: Publish the availability of your migration path

  • Use the Marketplace Migrations API to inform customers about the availability of your migration path in the Assess your apps screen of the CMA:

    Assess your apps screen

    • Provide migrationPath field with the value set to AUTOMATED.

    • Provide the cloudMigrationAssistantCompatibilityRanges field value to the Marketplace Migrations API. This field value should indicate the version ranges of your server app with the automated migration path implementation. The CMA will ask your customers to upgrade their server app if the installed version is lower than the versions specified in these ranges.

    • (Optional) Provide the featureDifferenceDocumentation field value to link to a page that explains the differences between the server and cloud versions of your app.

    • (Optional) Provide the migrationDocumentation field value to link to your app's migration guide.

Partially automated

Step 1: Implement the 'Progress reporting' feature

  • Use the Status API to implement the progress reporting feature in your cloud app. This allows your cloud app to:
    • send a IN_PROGRESS status message at regular interval of every 10 - 15 minutes to inform the customer that the app migration is running and report on its progress
    • send an INCOMPLETE status message when the automated part of the app migration is complete
    • send FAILED if app migration encountered an error and can't be completed

The status messages sent using the Status API displays in the CMA user interface, on the Migration details screen, letting customers know when your server app data has successfully migrated to their cloud site and is ready to use.

Migration details screen

Step 2: Test your 'Progress reporting' implementation

  • Test the progress reporting in the CMA. If you haven't published your migration path yet, enable dev mode first to test the progress reporting implementation.

Step 3: Publish a new version of your server app to Marketplace

  • After you have tested your migration path, build your app and publish it to Marketplace. At this stage, your migration path availability still won't be displayed to customers.

Step 4: Publish the availability of your migration path

  • Use the Marketplace Migrations API to inform customers about the availability of your migration path in the Assess your apps screen of the CMA:

    • migrationPath: This field value should be set to AUTOMATED.
    • cloudMigrationAssistantCompatibilityRanges: This field value should indicate the version ranges of your server app with the automated migration path implementation. The CMA will ask your customers to upgrade their server app if the installed version is lower than the versions specified in these ranges.
    • migrationDocumentation(optional): This value should link to your app's migration guide. For partially automated apps, this guide should include the manual actions your customer needs to perform after the app migration finishes.
    • featureDifferenceDocumentation (optional): This field value should link to a page that explains the differences between the server and cloud versions of your app.

Included in the core migration of the Cloud Migration Assistant

Step 1: Publish the availability of your migration path

  • Use the Marketplace Migrations API to inform customers about the availability of your migration path in the Assess your apps screen of the CMA:

    Assess your apps screen

    • Provide migrationPath field with the value set to INSTALL_ONLY.

    • Provide the cloudMigrationAssistantCompatibilityRanges field value to the Marketplace Migrations API. This field value should indicate the version ranges of your server app with the automated migration path implementation. The CMA will ask your customers to upgrade their server app if the installed version is lower than the versions specified in these ranges.

    • (Optional) Provide the migrationDocumentation field value to link to your app's migration guide.

    • (Optional) Provide the featureDifferenceDocumentation field value to link to a page that explains the differences between the server and cloud versions of your app.

Checking your migration path

If your app has an automated path, the app assessment screen should reflect this. Refer to understanding app assessment for more information.

It is important turn dev-mode off to test what your customers will experience.

If you notice onStartAppMigration() is not being run with dev-mode off this means that your app is on our install-only list. In this case, you will need to contact support to request removal from this list.

Being on the install-only list means that your app has not implemented a server listener and will always be marked as COMPLETE in app migration. If your app is on this list, it could be due to earlier communications with Atlassian.

Rate this page: