Skip to main content
Skip table of contents

Server (with Backbone) to Server → Cloud to Server (with Backbone)

This article guides you through the steps to take for the migration of a Server (where Backbone is configured) to server synchronization to a Cloud to Server (where Backbone is configured) synchronization.

Prerequisites

  • You are synchronizing to a Server instance which also has Backbone installed

  • You have configured/set up the synchronization on your instance

  • Only you are migrating your Server instance to Cloud

  • There are no errors in the troubleshooting tab of the configuration. If there are, please solve these first.

  • You need to have Python 3 installed on your computer.

  • You need these scripts: splitMappingFile.py and translateMappingFile.py

Things to Keep in Mind

  • You can't set up the synchronization on the Cloud side which means that your partner will need to set up/configure the synchronization

Migration Steps

These steps assume the following setup:

  • Project SA - project that should be migrated from Server to Cloud

  • Project CA - project SA after it has been migrated from Server to Cloud

  • Project SB - partner project on Server

Step-1: Export your synchronization data

  1. Stop the original running synchronization

  2. Export the synchronization config for this synchronization

  3. Download the synced issue data for this synchronization (open the synchronization config and click ••• > Download synchronized issues)

Step-2: Migrate your server project to the Cloud

Migrate the project SA using the Jira Cloud Migration Assistant. We’ll call the new Cloud project in this guide CA.

Step-3: Modify exported data

  1. Open the exported synchronization config file you created in step 1.2

    1. Rename "firstConnector" (at the beginning of the file) to "secondConnector"

    2. Rename "secondConnector" (in the middle of the file) to "firstConnector"

  2. Run python -m pip install requests in the root directory of the scripts to install the requests module for python

  3. Run python translateMappingFile.py -f <path_to_your_file_from_step_1.3> --bu1 <url_of_your_jira_server> --u1 <user_for_your_jira_server> --p1 <password_for_your_jira_server> --bu2 <url_of_your_jira_cloud> --u2 <user_for_your_jira_cloud> --p2 <access_token_for_your_jira_cloud>. This command will create a new file. You can find out the file name by analyzing the last line of the output: e.g. saving json to /Users/myuser/20230512103931_sync_info_pairs.json-converted.json

  4. Open the converted file and rename:

    1. "firstConnector" (at the beginning of the file) to "secondConnector"

    2. "secondConnector" (in the middle of the file) to "firstConnector"

  5. Split the file into processable chunks by running python splitMappingFile.py -f <path_to_created_file>

  6. You now have multiple files called chunkedMappingFile-X.json in your current working directory

Step-4: Create a new synchronization

  1. Go to Project SB and start a new sync with project CA

  2. Import synchronization config that you exported and changed in step 3.1

  3. For each chunkedMappingFile-X.json: Upload the synced issue data for these issues (click ••• > Pair existing issues >  Pair existing issues synced with Backbone before)

  4. In the synchronization config, check every tab ('Issue types', 'Fields - mappings' etc.) for validation errors – these will appear in yellow warning boxes. These warnings can appear due to custom IDs (issue type IDs, field IDs, etc) being different in the new Jira instance. Find any errors and correct them.

    1. Note: if you are using a user field mapping, make sure to set it to "User Passthrough Mapping (by email)"

Step-5: Start the synchronization

  1. Start the new synchronization

  2. In the new synchronization, trigger a resync in both directions (with only the summary field, so the resync doesn't take long). This is done in order to recreate the information in the Sync info panel.

  3. Once you have verified everything is working correctly, delete the original synchronization. This will also delete the old information in the sync info panel.

Still Unclear? Reach Out to Us

If you need help with any of these migration steps, reach out to us via help@k15t.com.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.