The big merge:
When preserving every bit of data is the top priority
The Client
The Challenge
We were given a task to migrate the data from EGYM’s and Netpulse’s Jira cloud instances into a single instance and then perform the same operation for their Confluence clouds. Since Atlassian doesn’t offer an instance merging service, we needed to find a solution for this challenge ourselves. Furthermore, that solution had to work flawlessly and had no place for an error, considering that losing data was impermissible.
The Solution
We couldn’t simply take the cloud backup and unpack it on the Jira cloud because a part of the data would be lost. The loss of even the tiniest portion of data was unacceptable, so we had to find a way to keep the data intact on both instances — the one we were migrating from and the one migrating to. Also, we were required to keep all settings and history as they were.
We decided to split the process into two steps. The first step was testing — we downloaded the data from two Jira servers to two test servers and merged it on the third test server. Then we fixed all issues that came up during those procedures and uploaded the data from the third test server to the test cloud. The steps above were taken due to the impossibility of reaching the database directly from the cloud. We had to download all the data as is and then bring it to the proper format for merging.
After the successful execution, the client performed User Acceptance Testing and stayed pleased with the result. Having achieved the desired outcomes, we repeated the process to include the new data that was generated by the client while we ran the tests.
The Result
We found a way to successfully merge two Jira clouds and two Confluence clouds without any data, settings, and history loss. The outcomes have fully satisfied the client. Moreover, we have gained much valuable experience and will employ it in our future projects.
Key Learnings
Cloud limitations result in migration obstacles that require creative solutions.
Moving merged Cloud instances into the new instance is a smart decision.
Backing up data is a prolonged process. The emerging errors in the early stages can take up to 10 hours to resolve.
The Cloud database could be different for every Atlassian site due to different software version on it, and it takes some time to figure out what’s “under the hood”. Importing from cloud to cloud can lead to the number of errors and bugs due to the different bases that have to be fixed manually.
Plugins and users should be removed before importing into the cloud.
Next-gen projects add around 50% of migration time. There is no way to move them commonly without Atlassian support.
Deleted users will be a problem. While on the server a deleted user can’t be a Lead, it can be on the cloud. This will create additional issues during the migration procedure.
Always be alerted and ready to fix new issues in this unpredictable environment.