Migration from Jfrog antifactory to Nexus OSS

Hello There,

Has anyone did data migration from Jfrog Artifactory to Nexus Repository Manager OSS , if yes please guide.

We have also raised same concern to Jfrog support,

Regards,
SAM

I started looking at this a couple of weeks ago. The good news is that Artifactory has an export function which makes it easy to create a directory of all the artifacts you had there. The bad news is that Nexus considers bulk import to be a Pro feature not available in the OSS version ARGH!

So it appears the only way forward would be to do the export and then cook up a script to upload the artifacts to Nexus one at a time. The other thing which Nexus considers a Pro feature is creating API access keys, so any uploads you’re going to do with Nexus are going to use plain text userids/passwords. If I’m wrong about that (and I’d LOVE to be) someone please correct me, but I don’t think I am.

What I’ve discovered so far about uploading an artifact with curl and using base64 for the credentials is:

  • base64 is NOT any kind of security, just a trivial layer of obfuscation
  • echo -n “userid:password” | base64
  • curl -v -H “Authorization: Basic ” --upload-file <filename.jar> http://your_nexus_url/repository/< repository_name >/< org >/< artifact id >/< version >/< filename.jar >
  • note that this does NOT generate a pom.xml - I’m still trying to figure out that part

Base64 encoding is the standard for basic auth, curl allows you to use -u curl - The Art Of Scripting HTTP Requests Using Curl

There is a Upload Component which is part of the API which allows generating a POM, if you have the option you should use the original though as this will not include dependency information.