Enabling npm artifact repositories
You can enable an npm artifact repository in npm workspaces that run in a restricted environment.
-
You are not running any npm workspace.
Applying a ConfigMap that sets environment variables might cause a workspace boot loop. If you encounter this behavior, remove the |
-
Apply the Secret for the TLS certificate:
kind: Secret apiVersion: v1 metadata: name: tls-cer annotations: controller.devfile.io/mount-path: /public-certs controller.devfile.io/mount-as: file labels: controller.devfile.io/mount-to-devworkspace: 'true' controller.devfile.io/watch-secret: 'true' data: nexus.cer: >- <Base64_encoded_content_of_public_cert>__ (1)
1 Base64 encoding with disabled line wrapping. -
Apply the ConfigMap to set the following environment variables in the
tools
container:kind: ConfigMap apiVersion: v1 metadata: name: disconnected-env annotations: controller.devfile.io/mount-as: env labels: controller.devfile.io/mount-to-devworkspace: 'true' controller.devfile.io/watch-configmap: 'true' data: NPM_CONFIG_REGISTRY: >- https://<npm_artifact_repository_route>/repository/npm-all/
Disabling self-signed certificate validation
Run the command below to disable SSL/TLS, bypassing the validation of your self-signed certificates. Note that this is a potential security risk. For a better solution, configure a self-signed certificate you trust with NODE_EXTRA_CA_CERTS
.
-
Run the following command in the terminal:
npm config set strict-ssl false
Configuring NODE_EXTRA_CA_CERTS to use a certificate
Use the command below to set NODE_EXTRA_CA_CERTS to point to where you have your SSL/TLS certificate.
-
Run the following command in the terminal:
`export NODE_EXTRA_CA_CERTS=/public-certs/nexus.cer` (1) `npm install`
1 /public-certs/nexus.cer
is the path to self-signed SSL/TLS certificate of Nexus artifactory.