Skip to content

Import repositories from Nexus

Current import workflow for bringing selected repositories from Sonatype Nexus into Craftifact.

Scope and prerequisites

  • Current source support is Sonatype Nexus only.
  • Import is available for paid Pro and above, plus approved demos.
  • The target Craftifact instance must already be provisioned and ready.
  • Nexus authentication is currently basic auth only.

Current importable package formats are:

  • Maven
  • Python
  • OCI
  • npm

If you need another source system, contact support.

Workflow

  1. Open the instance detail page and go to Import.
  2. Enter the Nexus base URL, username, and password.
  3. Click Fetch repositories.
  4. Review which repositories are importable and which are blocked.
  5. Optionally run Determine size before starting.
  6. Start the import and monitor per-repository progress.

Credentials are stored encrypted, reused for up to 1 hour of inactivity, and never shown back to the browser.

Selection rules

  • Unsupported formats are disabled.
  • If a repository name already exists in Craftifact, delete or rename it first.
  • Group repositories can only be imported when all member repositories exist in Nexus and are selected together.
  • Proxy repositories can be imported, but cached proxy content is not imported.

Runtime behavior

  • Imports run as background jobs and can take a long time.
  • Only one import can run per instance at a time.
  • Progress is tracked per repository, not per byte.
  • Failed repositories expose per-repository logs.
  • Cancel lets the current repository finish and skips the rest.
  • Force close is available if a cancelling import gets stuck.
  • Retry requeues failed, skipped, or still-pending repositories from the latest run.

Quota behavior

If the known selection size is already above the currently available quota, the import is blocked before it starts. Unknown repository sizes are allowed with warning, so large imports can still fail later when quota is reached.

What to do after a successful import

Imported repositories are created in Craftifact, but new repositories are left inactive until you add them to the instance configuration.

Use the Cleanup tab to copy the generated restore snippet, add that snippet to Effective configuration, and deploy the config.

Authorization is also separate:

  • repository permissions are not imported from Nexus
  • role and group setup must be adjusted manually in config
Rationale: why imported repositories stay inactive
The importer creates repository objects and transfers content, but the active runtime configuration is still controlled by the instance configuration. Keeping imported repositories inactive avoids silent drift between imported state and declared state.