For the on-premise to cloud migrations, installing a plugin that takes care of the transfer process is a pre-requisite. In a Kubernetes installation of Artifactory, if you would like to install the respective plugin manually, you may follow the below steps.
Step-1: Create a temporary directory by logging into the POD.
$ kubectl exec -it artifactory-0 bash -n <namespace> -c artifactory $ mkdir -p /var/opt/jfrog/tmp $ cd /var/opt/jfrog/tmp/
Step-2: Get the CLI from the following page.
$ https://jfrog.com/getcli/
Step-3: Download the plugin locally.
$ curl -k -O https://releases.jfrog.io/artifactory/jfrog-releases/data-transfer/[RELEASE]/lib/data-transfer.jar $ curl -k -O https://releases.jfrog.io/artifactory/jfrog-releases/data-transfer/[RELEASE]/dataTransfer.groovy
If the [RELEASE] tag is not bringing in the latest version for some reason, you may also use the latest version directly in the place of [RELEASE] from the above command, upon finding the latest release details from the web-page [https://releases.jfrog.io/artifactory/jfrog-releases/data-transfer/]
Step-4: Set the executable flag & add the plugins to the respective directories.
$ chmod +x jf $ kubectl cp ~/jf artifactory-0:/var/opt/jfrog/tmp/ -c artifactory -n <namespace> $ kubectl cp ~/data-transfer.jar artifactory-0:/var/opt/jfrog/tmp/ -c artifactory -n <namespace> $ kubectl cp ~/dataTransfer.groovy artifactory-0:/var/opt/jfrog/tmp/ -c artifactory -n <namespace> $ kubectl exec -it artifactory-0 bash -n <namespace> -c artifactory $ chmod +x jf
Step-5: Configure the HOME directory for the CLI.
$ cd /var/opt/jfrog/tmp/ $ chmod +x jf $ export JFROG_CLI_HOME_DIR=/tmp/.jfrog
Step-6: Configure the CLI with the local server (direct access to the local Artifactory on http://localhost:8082 with admin access token)
$ export JFROG_CLI_LOG_LEVEL=debug $ ./jf c add source-server
Step-7: Configure the target server (Configure the SaasArtifactory with admin token)
./jf c add target-server
Step-8: Test configuration before migration
./jf rt transfer-config source-server target-server --prechecks
Step-9: Migrate configuration
./jf rt transfer-config source-server target-server
Points to be noted:
- If the user does not have admin privileges to log in to the POD, the privileges have to be adjusted in prior, to successfully install the plugin through this method.
- If you’re observing any issues with the plugin installation through this method, prior to reaching the JFrog Support, consider enabling the DEBUG log level using the command export JFROG_CLI_LOG_LEVEL=debug, reproduce the issue and share the results with the support.