Skip to main content

Changes during the Upgrade Process

The wizard includes the following configurations in the upgrade.

  • Supported Configuration

    Active Security Realms, Anonymous, Access Settings, Atlassian Crowd Settings, HTTP Proxy Settings, LDAP Settings, NuGet API Keys, Privileges, Repository Health Check, Role Mappings for LDAP/Crowd, Roles, SSL Certificates, Users User Tokens

  • Supported Formats

    Maven2, npm, NuGet, Site Repositories, RubyGems

    (This does not include Maven2 staging repositories)

  • Repository Firewall Configuration

    Repositories keep items in quarantine. Changes to quarantined items are updated through the synchronization upgrade step.

  • Component Metadata

    uploaded_by, uploaded_by_ip, uploaded_date, lastModified

Changes to Data During Upgrade Process

Nexus Repository 3 uses a different architecture from Nexus Repository 2; e core changes to data occur as part of the upgrade process.

  • NuGet API Keys

    The upgrade tool adds all keys from Nexus Repository 2 even when the realm is not active.

  • Content Storage

    Nexus Repository 2: stores content directly on the filesystem in folders while Nexus Repository 3 uses a blob store format to work with more formats and storage options.

    Nexus Repository 3: iterates over every component stored in Nexus Repository 2. This is the bulk of the time required for the upgrade process.

    See Storage Planning

  • Settings and Metadata

    Nexus Repository 2: settings and component metadata are stored across many files.

    Nexus Repository 3: loads equivalent data into the database.

  • Component URLs

    Nexus Repository 2: uses a different URL pattern to expose repositories and repository groups.

    Nexus Repository 3: includes a capability to allow your automated tools and CI to use the old URL patterns.

  • Roles

    Roles from Nexus Repository 2 are assigned a Role ID that starts with nx2-.

    Role descriptions have Legacy appended to their description.

  • Repository Targets

    Repository targets from Nexus Repository 2 are converted to content selectors in Nexus Repository 3.

    Repository targets are based on regular expressions; these are converted to Content Selector Expression Language (CSEL).

  • Repository IDs

    Nexus Repository 3 uses the Repository ID defined in Nexus Repository 2 as the Name for the upgraded repository; they define the access URL in both cases. The user-facing Repository Name from Nexus Repository 2 is dropped during the upgrade since there is no equivalent feature in Nexus Repository 3.

    IDs of repositories and repository groups in Nexus Repository 2 that differ only by case will not be accepted during an upgrade to Nexus Repository 3 (example version 2 IDs: myrepoid vs Myrepoid). To resolve the ID conflict review and change any IDs in version 2 to distinguishable names.

  • HTTP(S) Proxy Configuration

    Your HTTP or HTTPS proxy settings for Nexus Repository 2 may not be valid for your Nexus Repository 3 environment. Configure your HTTP or HTTPS proxy settings in Nexus Repository 3 to upgrade them.

    If HTTP or HTTPS proxy settings are enabled in your source Nexus Repository 2, the upgrade to your target Nexus Repository 3 might fail because the target can not communicate with the source repository manager. This could happen if Nexus Repository 3 could not find a Nexus Repository 2 proxy server in place.

    If you enabled Nexus Repository 2 HTTP or HTTPS settings during an upgrade, Nexus Repository 3 would use its original HTTP or HTTPS settings and ignore the settings in place for Nexus Repository 2.

    Nexus Repository 3 generates a warning in the log when this error occurs.

    Skipping HTTP(S) proxy settings, connection to Nexus 2 failed using new settings. Please manually configure the HTTP proxy settings after the upgrade is done.

Not Included in the Upgrade

The following items are not included in the upgrade:

Unsupported repository formats: Yum Maven1, P2, OBR; Capabilities, Custom branding, Custom edits to logback.xml configuration files, Environment variables, Java VM settings, Manual edits to files in the installation directory, Operating system service scripts, Operating system optimization, Routing rules, Scheduled tasks, Staging repositories, settings, or configuration, The admin user's password, Third-party or custom-developed plugins, Virtual repositories

  • Yum Repositories from Nexus Repository 2

    RPMs stored in Yum-enabled Maven2 repositories on Nexus Repository 2 can only be moved to Maven2 repositories in Nexus Repository 3. Yum-related capabilities must be disabled on the Maven2 repository first. There is no automatic option to move RPMs in Nexus Repository 2 Maven2 repositories into Yum format repositories in Nexus Repository 3.

  • P2 Repositories from Nexus Repository 2

    We recommend producing the final P2 static site using your build pipeline and publishing the final site to a raw format hosted repository in Nexus Repository 3.

    Use the repository import to import P2-hosted repo content into a raw repository.