Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configurar y usar Yarn con CodeArtifact
Después de crear un repositorio, puede usar el cliente Yarn para administrar los paquetes npm.
nota
Yarn 1.X
lee y usa la información de su archivo de configuración de npm (.npmrc), pero Yarn 2.X
no. La configuración de Yarn 2.X
debe definirse en el archivo .yarnrc.yml.
Contenido
Configure Yarn 1.X con el comando aws codeartifact login
Para Yarn 1.X
, puede configurar Yarn con CodeArtifact mediante el comando aws codeartifact login
. El comando login
configurará su archivo ~/.npmrc con la información y las credenciales del punto de conexión del repositorio CodeArtifact. Con Yarn 1.X
, los comandos yarn
utilizan la información de configuración del archivo ~/.npmrc.
Para configurar Yarn 1.X
con el comando login
Si aún no lo ha hecho, debe configurar sus credenciales AWS para utilizarlas con la AWS CLI, tal y como se describe en Introducción a CodeArtifact.
Para ejecutar el comando
aws codeartifact login
correctamente, npm debe estar instalado. Consulte Descarga e instalación de Node.js y npmen la documentación de npm para obtener instrucciones de instalación. Use el comando
aws codeartifact login
para obtener las credenciales de CodeArtifact y configurar su archivo ~/.npmrc.Sustituya
my_domain
por su nombre de dominio de CodeArtifact.Sustituya
111122223333
por el ID de cuenta AWS del propietario del dominio. Si va a acceder a un repositorio de un dominio de su propiedad, no tiene que incluir--domain-owner
. Para obtener más información, consulte Dominios entre cuentas.Sustituya
my_repo
por el nombre de su repositorio de CodeArtifact.
aws codeartifact login --tool npm --domain
my_domain
--domain-owner111122223333
--repositorymy_repo
El comando
login
realiza los siguientes cambios en el archivo ~/.npmrc:-
Añada un token de autorización después de obtenerlo de CodeArtifact con sus credenciales AWS.
-
Establece el registro npm en el repositorio especificado por la opción
--repository
. -
Para npm 6 y versiones anteriores: se suma
"always-auth=true"
para que el token de autorización se envíe para cada comando de npm.
El período de autorización predeterminado después de una llamada
login
es de 12 horas ylogin
debe invocarse para actualizar periódicamente el token. Para obtener más información sobre el token de autorización creado con el comandologin
, consulte Tokens creados con el comando login.-
Para npm 7.X y 8.X, debe añadir
always-auth=true
a su archivo ~/.npmrc para usar Yarn.Abra su archivo ~/.npmrc en un editor de texto y añada
always-auth=true
en una nueva línea.
Puede usar el comando yarn config list
para comprobar que Yarn está usando la configuración correcta. Tras ejecutar el comando, compruebe los valores de la sección info npm
config
. El contenido debe ser similar al siguiente fragmento.
info npm config { registry: 'https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/', '//my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/:_authToken': 'eyJ2ZXI...', 'always-auth': true }
Configure Yarn 2.X con el comando yarn config set
El siguiente procedimiento detalla cómo realizar la configuración de Yarn 2.X
actualizando su configuración .yarnrc.yml
desde la línea de comandos con el comando yarn config set
.
Para actualizar la configuración yarnrc.yml
desde la línea de comandos
Si aún no lo ha hecho, debe configurar sus credenciales AWS para utilizarlas con la AWS CLI, tal y como se describe en Introducción a CodeArtifact.
Use el comando
aws codeartifact get-repository-endpoint
para obtener el punto de conexión de tu repositorio de CodeArtifact.Sustituya
my_domain
por su nombre de dominio de CodeArtifact.Sustituya
111122223333
por el ID de cuenta AWS del propietario del dominio. Si va a acceder a un repositorio de un dominio de su propiedad, no tiene que incluir--domain-owner
. Para obtener más información, consulte Dominios entre cuentas.Sustituya
my_repo
por el nombre de su repositorio de CodeArtifact.
aws codeartifact get-repository-endpoint --domain
my_domain
--domain-owner111122223333
--repositorymy_repo
--format npmActualice el valor
npmRegistryServer
de su archivo .yarnrc.yml con el punto de conexión de su repositorio.yarn config set npmRegistryServer "https://
my_domain
-111122223333
.d.codeartifact.region
.amazonaws.com/npm/my_repo
/"Obtenga un token de autorización CodeArtifact y guárdelo en una variable de entorno.
nota
El siguiente comando es para máquinas macOS o Linux. Para obtener información sobre la configuración de variables de entorno en un equipo Windows, consulte Pasar un token de autenticación mediante una variable de entorno.
Sustituya
my_domain
por su nombre de dominio de CodeArtifact.Sustituya
111122223333
por el ID de cuenta AWS del propietario del dominio. Si va a acceder a un repositorio de un dominio de su propiedad, no tiene que incluir--domain-owner
. Para obtener más información, consulte Dominios entre cuentas.Sustituya
my_repo
por el nombre de su repositorio de CodeArtifact.
export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text`-
Use el comando
yarn config set
para añadir su token de autenticación CodeArtifact a su archivo .yarnrc.yml. Sustituya la URL del siguiente comando por la URL del punto de conexión del repositorio del paso 2.yarn config set 'npmRegistries["https://
my_domain
-111122223333
.d.codeartifact.region
.amazonaws.com/npm/my_repo
/"].npmAuthToken' "${CODEARTIFACT_AUTH_TOKEN}" -
Utilice el comando
yarn config set
para establecer el valor denpmAlwaysAuth
atrue
. Sustituya la URL del siguiente comando por la URL del punto de conexión del repositorio del paso 2.yarn config set 'npmRegistries["https://
my_domain
-111122223333
.d.codeartifact.region
.amazonaws.com/npm/my_repo
/"].npmAlwaysAuth' "true"
Tras la configuración, el archivo de configuración .yarnrc.yml debería tener un contenido similar al del siguiente fragmento.
npmRegistries: "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/": npmAlwaysAuth: true npmAuthToken: eyJ2ZXI... npmRegistryServer: "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/"
También puede usar el comando yarn config
para comprobar los valores de npmRegistries
y npmRegistryServer
.