I’ve added atlassian-app-cloud-migration-tracker to pom.xml
I’ve added com.atlassian.migration.app to DynamicImport and excluded it from regular Import
I’ve added LocalCloudMigrationAccessor per examples in order to capture the CloudMigrationAccessor for use later – the code is exactly as in the samples and has been verified to work correctly, capturing a valid instance.
I’ve added MyPluginComponentImpl per the examples, set the server/cloud app keys, registered the listener, and verified in the debugger that onRegistrationAccepted() is in fact called.
I’ve enabled migration-assistant.app-migration.feature in /admin/darkfeatures.action
I’ve run the Migration Assistant. On the “Assess your apps” page, it says “You don’t have any apps that need migrating with this tool.” Not sure what I’m missing for my app/plugin to show up here.
On the cloud side:
I run the cloud app with npm start
I’ve verified that it’s running on my cloud Confluence instance
I’ve registered for the /enabled lifecycle event
In that lifecycle event, I’ve successfully registered migration webhooks using an authenticated addon.httpClient and the JSON “endpoints” format with absolute URLs (directly under addon.config.baseUrl.href), and verified a successful response
I’ve set up a POST route for the above-registered migration webhook endpoint, added a breakpoint and a log, and it’s never called. I assumed it’d at least be called with some sort of “are you ready/available for a migration?” question from the cloud instance.
Not sure what I’m missing. Any help or guidance would be appreciated. Thanks.
Yes, when I run Confluence via atlas-debug as described above, the app I’m trying to migrate shows up in UPM under “User-installed” with License status of “Valid”.
I’ve gotten slightly past that point, so that the app shows up in the “Assess your apps” page in Migration Assistant, but shows false (red “x”) for both “Exists in cloud” and “Can be migrated”.
I’ve also looked into the cloudAddonKey in the Marketplace REST API but at the phase the server app is in the migration, only onRegistrationAccepted has been called, but onStartAppMigration has not yet been called, and it’s not clear to me whether this REST API endpoint is supposed to be called at this phase in the migration. If so, it wasn’t shown in any of the docs/guides/examples that I’ve seen so far.
One possible reason could be because the cloud app key and server app key are different, which is why I’m looking into that REST API call, to tell the Migration Assistant it’s the same app.
But it might be that I’m just missing some API call that I’m supposed to call inside onRegistrationAccepted, which logically makes sense, but again I have not seen it in any of the docs/guides/samples.