Converting application from Connect to Connect-on-Forge, tagged as not eligible for Data Residency migration

Hello everyone,

Can someone help us identify what we missed out in our configuration for Data Residency in Connect-on-Forge app. We are trying to convert our atlassian-connect.json to manifest.yml, but when we try to test our application for Data Residency, a warning appears stating “the application can’t be pinned or migrated to a new location” when we pin it to SG.

Our configuration in the manifest is as follows:

  • Lifecycle
connectModules:
  jira:lifecycle:
    - key: lifecycle-events
      installed: /installed
      uninstalled: /uninstalled
  • Endpoints
remotes:
  - key: connect
    baseUrl:
      default: <Default_BaseURL>
      SG: <SG_BaseURL>
      EU: <EU_BaseURL>
    operations:
      - storage
      - compute
      - fetch
      - other
    storage:
      inScopeEUD: true
  • Configuration
  migration:dataResidency:
    - key: dare
      remote: connect
      path: /rest/internal/1/migration/realm

Our configuration in the atlassian-connect is as follows:

  • Lifecycle
"lifecycle": {
    "installed": "/installed",
    "uninstalled": "/uninstalled",
    "dare-migration": "/rest/internal/1/migration/realm"
  },
  • Endpoints
"regionBaseUrls": {        
        "Global": <Default_BaseURL>,
        "US": <SG_BaseURL>,
        "EU": <EU_BaseURL>
    },

Thank you in advance!

1 Like

Hi @MarkSy, we hit something similar and had to work with Atlassian support to resolve. For us the non-pinnable was due to the the permissions.external.fetch.client and .backend also needing to declare the remote addresses (or the inScopeEUD flag set to false). After our experience Atlas added a info note to this page: Permissions .

Atlassian support was good in working through the issues with us, so try an ECOHELP if you get stuck.

Regards
Chris

2 Likes

Hello @Chris_at_DigitalRose, thank you for this. We will going to implement it in our end and we’ll let you know.

With appreciation,
Mark

Data Residency migration is now working in our end. On top on our configuration, we added, isScopeEUD and set it to false for properties that has address.

external:
  fetch:
    client:
      - address: '<address>'
        inScopeEUD: false
  images:
    - address: '<address>'
      inScopeEUD: false

Thank you

1 Like