Search...
Toggle theme

Artifactory (NPM)

3 Easy Steps

Teams using JFrog Artifactory can manage access to NES packages through 3 easy steps:

  1. Create a Remote Repository (NES Remote Repository) for our private NPM registry.
  2. Configure (or create) a Virtual Repository to leverage the newly created NES Remote Repository
  1. Verify your developers are able to access our package through your Virtual Repository.

Step 1: Create a Remote Repository

  1. Navigate to Artifactory > Repositories > Remote
  2. Select Create > Remote Repository, then select NPM as the type
  3. Configure the following on the Basic tab:

"Step 1"

  1. Configure the following on the Advanced tab:

"Step 1"

The final results should look similar to the following:

Basic

"Result-Basic"

Advanced

"Result-Advanced"

Step 2: Configure a Virtual Repository

In this step, you should configure the virtual repository referenced in the .npmrc files. This step is fairly straight forward, and only requires adding our private NPM registry after the public npmjs.org registry.

Assumptions:

  • You already configured a Remote Repository for npmjs.org keyed as npm-official
  • You already configured a Remote Repository for our registry keyed as nes (see Step 1)

If you already have a Virtual Repository configured with npm-official (and potentially other private sources) you can skip the following steps.

  • Navigate to Artifactory > Repositories > Virtual
  • Select Create > Virtual Repository, then select NPM as the type

Whether creating or editing a new Virtual Repository, add both npm-official and nes repositories to Selected Repositories with nes at the bottom of the list.

In most versions of Artifactory, you should see the following:

"Virtual-Setup"

Step 3: Verify Access

Assuming again your Virtual Repository is keyed as npm-default and that you have a valid Artifactory username / password, configure your .npmrc accordingly:

@neverendingsupport:registry=<artifactory_url>/artifactory/api/npm/<virtual_repository_key>/
<artifactory_url>/artifactory/api/npm/<virtual_repository_key>/:_password=<base64_artifactory_password>
<artifactory_url>/artifactory/api/npm/<virtual_repository_key>/:username=<artifactory_email>
<artifactory_url>/artifactory/api/npm/<virtual_repository_key>/:email=<artifactory_email>
<artifactory_url>/artifactory/api/npm/<virtual_repository_key>/:always-auth=true

Once configured, Artifactory will attempt to download packages under the @neverendingsupport namespace from our private registry.