After you run the migrator tool with the config
option, the migrator tool creates the migrationConfig.yaml
file inside the folder, <working directory>/migration/nexus-migrator
.
The following example shows a sample migrationConfig.yaml
file.
config: artifactory: serverId: Arty migrator: threads: 2 workDir: /root/.jfrog defaultPassword: xxxxxxxxxxxx checksumCalc: false logging: INFO security: convertExternalUsersGroupsToInternal: false repoRegex: - source: ^[0-9](.*)$ target: m-[REPO] userRegex: - source: ^[0-9](.*)$ target: m-[USER] - source: \s target: '-' groupRegex: - source: ^[0-9](.*)$ target: m-[GROUP] - source: \s target: '-' ldapRegex: - source: ^[0-9](.*)$ target: m-[LDAP] - source: \s target: '-' permRegex: - source: ^[0-9](.*)$ target: m-[PERM] nexus: majorVersion: 3 minorVersion: 32 url: http://xx.xx.xx.xxx:8081 username: admin password: xxxxxx dataDir: /opt/sonatype-work/nexus3/
Note
Nexus URL requires that the URL reaches Nexus directly to resolve the Nexus version. The URL should point the the Nexus application port and not some proxy port. If there is a reverse proxy or redirect it may not work properly.
Warning
Enabling checksum for artifact upload will increase memory utilization; therefore, verify that the Nexus machine has sufficient free resources if checksumCalc: true.
Update the value ofthreads
undermigrator
in the YAML file to set the number of threads to be used by the migrator tool. By default, the number of threads is set to half the number of cores in the machine. If you find the performance of the Nexus Repository Manager machine to be sluggish, you can reduce this number and run the migrator tool again.
Update the value of target
under repoRegex
in the YAML file to set the name to prepend to those repositories with names starting with non-alphabets. Do not edit the values in the square bracket (such as [REPO]) since they are keywords used in Nexus. You can also add a new source and target to use a different name for a repository in Artifactory. For example, if there are repositories that start with the name "dfault" and you want to change it as "default", you can do so by adding a new source and target with the required values. If you want to replace a substring in the name of a repository, a user, group, LDAP settings name, LDAP group settings name, or permission, you can provide a regular expression to match the substring in the source and provide the replacement in the target. By default, entries are added in the migrationConfig.yaml file to replace space characters with a hyphen ( - ).
Update the value of logging
under migrator
in the YAML file to set the logging level. By default, the level is set as INFO. You can change the value to DEBUG to get more log messages to help you debug issues.
Set the value of convertExternalUsersGroupsToInternal
to true if you want to convert all users and groups from an external source (for example, LDAP) to internal users and groups in artifactory.