Latest | Instance administration | Project move

On this page

Project move

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.

When to use project move

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.

Prerequisites

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.

Both source and target instances must have:

  • The exact same SonarQube version.
  • The same custom metrics.
  • The same custom rules.

How to export

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:

  1. 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.
  2. 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.
  3. Navigate to the project and at the project level, choose Project Settings > Import / Export.
  4. 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: 

<sonarqubeHome>/data/governance/project_dumps/export/<project_key>.zip

where <sonarqubeHome>:

  • For a ZIP installation: is the location where the SonarQube distribution has been unzipped.
  • For a Docker installation: is the installation directory of SonarQube within your container. This path is stored in the SONARQUBE_HOME environment variable. 

How to import

Your target instance must be Enterprise Edition or above.

On the target instance:

Step 1: With a user having the Administer System and Create Projects permission rights, go to Administration > Projects > Management and create the project using the same key the project had in the source instance.

Step 2: In the Clean as You Code setup step, select Use the global settings, the project import will take care of importing your former new code configuration.

Step 3: Configure the project's permissions and the quality profiles and quality gate associated with the project.

Step 4: Put the generated zip file into the directory <sonarqubeHome>/data/governance/project_dumps/import/ (create this folder if it does not already exist).

Step 5: Go to the Project's Home Page and choose Project Settings > Import / Export.

Step 6: Select Import to start importing your data.

Step 7: 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.

© 2008-2024 SonarSource SA. All rights reserved. SONAR, SONARSOURCE, SONARLINT, SONARQUBE, SONARCLOUD, and CLEAN AS YOU CODE are trademarks of SonarSource SA.

Creative Commons License