Run the migration tool in multiple stages

JFrog Installation & Setup Documentation

Content Type
Installation & Setup

Run the script with the options in the following order if you want to go through the different stages individually.

  1. config

  2. getConfig

  3. createRepo

  4. migrateArtifact

  5. migrateSecurity

The following table provides information about the options available with the migrator script.




Run the migration script in a single step.

config, c

Configure information about Artifactory and Nexus Repository.

getConfig, gc

Get configuration information from Nexus Repository.

createRepo, cr

Create target repositories in Artifactory.

migrateArtifact, ma

Migrate artifacts from Nexus Repository to Artifactory.

You can use the following optional commands when you migrate from Nexus 3.

  • repos - To specify the repositories to migrate.

    For example, /jfrog-nexus-migrator-<version>.sh ma --repos="docker-local,maven-release" command, migrates docker-local and maven-release repositories and ignores the rest of the repositories.

    You can also wildcards inputs to migrate all repositories that satisfies the condition.

    For example, /jfrog-nexus-migrator-<version>.sh ma --repos="docker*,maven*" command, migrates all repositories that start with docker or maven.

  • check-binary-exists - Skip the artifacts if they exist in Artifactory. The default value is false.

  • force - Forces migration run for all repositories regardless of their migration status. The default value is false.

  • print-failed-artifacts - Prints the list of all artifacts that failed the migration process to the file, failedArtifacts.txt.

  • includePattern - To migrate artifacts from a specific repository path you can mention the path with the option --includePattern=<path>. For example:

    ./jfrog-nexus-migrator-<version>.sh ma --includePattern="test/" 

    Only the artifacts from the test folder are migrated.

  • use-existing-asset-file - To fetch the asset list that contains the artifacts to migrate from an external file.

    Keep the asset file with name as <repo-name>_assetmap.json inside migration/nexus-migrator folder and set --use-existing-asset-file="true" while running the migrateArtifacts step.

    ./jfrog-nexus-migrator-<version>.sh ma --use-existing-asset-file="true" 

migrateSecurity, ms

Migrate users, groups, and permission targets from Nexus Repository to Artifactory.

You can run the migration script with the getConfig, createRepo, migrateArtifact, and migrateSecurity options in sequence to load the new objects from the currently configured Nexus Repository Manager to Artifactory. If you pause the migration process on a Nexus 3 installation and resume at a later time, the migrator tool migrates only those repositories and security entities added after you paused the process. In case of migration on a Nexus 2 installation, the migrator tool migrates all repositories and security entities in the Nexus repository regardless whether they were migrated before you paused the migration process.


If you convert an existing repository to a federated repository, the migrator tool will migrate new artifacts to the federated repository.

The migrator tool creates YAML files and JSON files based on the Nexus Repository Manager inside the folder, <working directory>/migration/nexus-migrator.

The migrator tool creates the following configuration files:

  • migrationConfig.yaml

  • repositories.list

  • repositories.yaml

  • security.json

  • securityLdapConf.yaml

  • securityRegexMap.list