Contamos con la respuesta a esta preocupación, al menos eso creemos. Si tienes alguna duda coméntalo, que con gusto te ayudaremos
Solución:
Te recomiendo tener un repositorio virtual en tu Artifactory con dos repositorios:
- Repo remoto con el repositorio externo o registro público. Probablemente tenga esta URL en su registro.
- Repo local de NPM (su repositorio local real).
Luego:
-
Reemplazando el registro predeterminado con su nuevo repositorio local con este comando:
npm config set registry http://
:8081/artifactory/api/npm/your-npm-virtual-repo-name -
Implemente sus paquetes en Artifactory. La primera vez que puede cargar los artefactos en el artefacto manualmente o usando este comando en cada proyecto:
npm publish --registry http://
:8081/artifactory/api/npm/your-virtual-repo-name -
Elimine los enlaces en su paquete.json y reemplácelos con solo el nombre de la dependencia y la versión como:
"dependencies": "vue": "^2.4.4", "ce-ui": "^0.0.2"
Más información aquí:
- ¿Cómo configurar artefactos para usar con artefactos de node js?
- Registro Npm con Jfrog Artifactory
Para tener dependencias de diferentes registros referidos en el mismo paquete.json, npm recomienda usar scope
Los paquetes con alcance se verán como
"dependencies":
"@myorg/mypackage": "^1.3.0"
Puede asociar un alcance con un registro usando npm config:
npm config set @myorg:registry http://reg.example.com
Una vez que un alcance está asociado con un registro, cualquier instalación de npm para un paquete con ese alcance solicitará paquetes de ese registro en lugar del registro predeterminado https://registry.npmjs.org
Consulte: https://docs.npmjs.com/cli/v6/using-npm/scope
Comentarios y calificaciones
Nos puedes añadir valor a nuestro contenido informacional añadiendo tu experiencia en las aclaraciones.