Project move allows you to export a project from one SonarQube instance and import it into another SonarQube instance. To use project move, you must have Administer permission rights on the project in the source instance, and access to the file systems of both instances.
Project move can help you with the following situations:
- You want to create a central SonarQube instance at the enterprise level and you want to keep the history created on instances used previously at the team level.
- You want to consolidate your editions and move projects from a Community Edition instance to an Enterprise Edition instance or above.
- Your company is acquiring another company that already has a central SonarQube instance.
- You are at a large company with several SonarQube instances and an application is transferred from one team to another.
To export your project's data from the source instance and then load it on the target instance, make sure the following are true.
The target instance must:
- Be Enterprise Edition or above.
- Contain all of the plugins with the same versions as the source instance.
The target instance can have additional plugins and languages that aren't in the source instance, but not the other way around. If your source instance has plugins that aren't in your target instance, either remove them and reanalyze your project or add them to your target instance.
Both source and target instances must have:
- The exact same SonarQube version.
- The same custom metrics.
- The same custom rules.
Your source instance can be Community Edition or above, but cannot have plugins or languages that are not in the target instance.
On the source instance:
- Review the branches of the project by navigating to Project Settings > Branches & Pull Requests and enable Keep when inactive for each branch you want to keep. Note that pull requests are not saved when exporting a project.
- Reanalyze the project one last time for each branch that has enabled the Keep when inactive option to make sure it is populated with data corresponding to your current SonarQube installation.
- Navigate to the project and at the project level, choose Project Settings > Import / Export.
- Click on the Export button to generate a zip file containing the settings and history of your project (but not the source code). Note that if you need to change the project's key, you must do it before performing the export.
A zip file containing all project data is generated in a file named:
Your target instance must be Enterprise Edition or above.
On the target instance:
- With a user having the Administer System and Create Projects permission rights, go to Administration > Projects > Management and provision the project using the same key the project had in the source instance.
- Configure the project's permissions and the quality profiles and quality gate associated with the project.
- Put the generated zip file into the directory
<SONARQUBE_HOME>/data/governance/project_dumps/import/(create this folder if it does not already exist).
- Go to the Project's Home Page and choose Project Settings > Import / Export.
- Select Import to start importing your data.
- Source code is not included in the zip file. Once the import is finished, trigger an analysis to import source files into the new instance.
- If the import is successful, the zip file will automatically be deleted.
- It is not possible to import a project that has been already analyzed on the target instance.
- Security reports in an imported project will be empty until an analysis has run.