Change the Base URL in Federated Repositories

JFrog Artifactory Documentation

ft:sourceType
Paligo
Overview

Starting with Artifactory version 7.55.1, administrators can change the base URL in an active Federated repository with remote members. This might be necessary if the network topology has changed.

Important

This feature is available only when all Federation members are using version 7.55.1 or above.

The steps required to complete the change are dependent on the use case:

  • Changing the base URL when no Federated base URLs have been defined

  • Changing the base URL when Federated base URLs are defined

  • Changing the existing Federated base URL

If there is a Federation Base URL, the JPD publishes this address to all Federation members, who then use this address to access the Federated repository on the JPD instead of the standard base URL.

change-base-URL_diagrams.png
Locate the Federated Base URL

To check whether the Federated repository has a Federated base URL, do the following:

  1. In the Administration tab, select Artifactory > Advanced > Config Descriptor.

    access-Config-Descriptor.png
  2. Search the configuration file for a Federation base URL entry:

    Fed_base_URL_config-descriptor_edit.png

Note

The Config Descriptor can also be checked by sending a POST request using the relevant REST API. See Modifying Configuration Using the REST API.Global Configuration Descriptor

Change the Base URL

If the Federation uses Federated base URLs, and these URLs are not changing, all the Administrator needs to do is change the base URL directly from the JFrog platform UI, as described below.

  1. In the Administration tab, select General > Settings.

  2. Enter a new custom base URL.

  3. Click Save.

    custom-base-URL.png

Note

It is also possible to change the custom base URL using the Update Custom URL Base REST API.Update Custom URL Base

Change the Federated Base URL

If the Federation uses Federated base URLs and the URLs need to change, the Administrator makes the change using the Config Descriptor. See Locate the Federated Base URL for details.

Generate New Tokens

When the Federation members do not have Federated base URLs, or if the Federated base URLs have changed, the Administrator must generate a new pairing token and pair the source and target JPDs.

Make sure to perform this procedure on each remote Federation member.

  1. Generate a new token from the source JPD using the Create Pairing Token Platform REST API.Create Pairing Token

  2. Pair the target JPD to the source JPD using the new token with the Initiate Pairing Platform REST API.Initiate Pairing

  3. Replace the base URL (or Federated base URL) by executing the following POST request against the target JPD: api/federation/replaceUrl with the following body:

    {  
        "oldBaseUrl": "http:/<old base URL>/artifactory",  
        "newBaseUrl": "http://<new base URL>/artifactory"
    }

Note

For more information, see Replace URL in the Artifactory REST API.Replace URL

After Changing the Base URL

It is strongly recommended to test the functionality of the Federation after changing the base URL or Federated base URL. After verifying that the Federation members are successfully synchronized, the administrator can optionally revoke the obsolete keys.

  1. In the Administration tab, select Monitoring > Federation Status. If you see that the Federation is no longer in sync, there is a problem with the new configuration. See View Federation Sync Status for more information.

  2. [optional] After verifying that all Federation members have synchronized successfully with the updated base URL, revoke the obsolete key for each remote JPD using the Revoke Token by ID REST API.Revoke Token by ID

Important

As a fallback, it is possible to change the base URL in a more aggressive way by canceling the Federation, changing the base URL, and then recreating the Federation. Please note this has a huge impact on the system since it requires creating each Federated repository again from scratch. For more information, see Working with Federated Repositories.