Gerenciar pacotes Node.js

O Artifact Registry é compatível com pacotes Node.js que você gerencia com o npm.

Visão geral

Para se familiarizar com os pacotes do Node.js no Artifact Registry, consulte o guia de início rápido.

Quando estiver pronto para saber mais, leia as seguintes informações:

  1. Se você não tem experiência com npm, leia sobre os seguintes conceitos:
  2. Crie um repositório de pacotes do Node.js para seus pacotes.
  3. Conceda permissões à conta que se conectará ao repositório. As contas de serviço para integrações comuns com o Artifact Registry têm permissões padrão para repositórios no mesmo projeto.
  4. Configure suas ferramentas:
  5. Saiba mais sobre o gerenciamento de pacotes.

Como usar escopos

Um escopo npm é um rótulo para agrupar pacotes. Os escopos são necessários quando você trabalha com vários registros npm, incluindo:

  • Publicar e instalar pacotes em registros diferentes sem a necessidade de alternar de um registro para outro. Por exemplo, seus builds podem incluir pacotes do registro npm público e de um repositório do Artifact Registry.
  • Publicar os mesmos pacotes em vários repositórios do Artifact Registry nos projetos do Google Cloud, bem como em outros registros npm, sem conflitos de nome de pacote.

É recomendável sempre definir um escopo para os repositórios. Se você não especificar um escopo ao publicar ou instalar um pacote, o npm usará o registro padrão configurado, como o registro npm público.

Você define o escopo para cada repositório do Artifact Registry no arquivo de configuração .npmrc. As mesmas credenciais para autenticação se aplicam a todos os repositórios.

O exemplo a seguir mostra a configuração de dois repositórios do Artifact Registry em diferentes projetos.

  • O escopo @blue é para o repositório no projeto blue-project.
  • O escopo @green é para o repositório no projeto green-project.
@blue:registry=https://us-central1-npm.pkg.dev/blue-project/blue-npm-repo/
//us-central1-npm.pkg.dev/blue-project/blue-npm-repo/:always-auth=true

@green:registry=https://us-central1-npm.pkg.dev/green-project/green-npm-repo/
//us-central1-npm.pkg.dev/green-project/green-npm-repo/:_authToken=""
//us-central1-npm.pkg.dev/green-project/green-npm-repo/:always-auth=true

Depois de autenticar-se no Artifact Registry, você pode fazer upload de um pacote para um repositório específico usando o escopo apropriado. Por exemplo, o comando a seguir faz upload de um pacote para blue-npm-repo no projeto blue-project:

npm publish @blue/blue-npm-repo

Para mais informações sobre escopos, consulte a documentação do NPM

Como configurar o npm

As configurações usadas para autenticação são armazenadas no arquivo de configuração .npmrc. É possível configurar um arquivo .npmrc no nível do projeto, do usuário ou global.

Ao configurar a autenticação com o Artifact Registry, você define os repositórios aos quais quer se conectar e as credenciais para a autenticação.

Repositórios do Artifact Registry

Recomendamos definir a lista de repositórios no arquivo de configuração por projeto. Esse arquivo geralmente está no mesmo diretório que o arquivo package.json do seu projeto npm. O auxiliar de credenciais do Artifact Registry verifica esse arquivo .npmrc para seus repositórios por padrão.

Se você não quiser expor os caminhos do repositório no controle de origem é possível:

  • Adicione o nome de arquivo .npmrc à lista de arquivos a serem ignorados do controle de origem.
  • Em vez disso, armazene a lista de repositórios no arquivo confg por usuário. O arquivo .npmrc por usuário está no diretório inicial do usuário ou é definido com o parâmetro npm --userconfig ou a variável de ambiente $NPM_CONFIG_USERCONFIG. As definições no arquivo de configuração por usuário se aplicam a todos os seus projetos a menos que você os modifique no nível do projeto.
Credenciais do Artifact Registry

Armazene suas credenciais do Artifact Registry na configuração por usuário para que não fiquem disponíveis para outros usuários. Esse arquivo está localizado no diretório inicial do usuário ou é definido com o parâmetro npm --userconfig ou a variável de ambiente $NPM_CONFIG_USERCONFIG.

O Artifact Registry O auxiliar de credenciais é armazenado no registro npm público e não exige do Google Cloud para instalação.

Mantenha qualquer registro padrão atual configurado no arquivo .npmrc. O padrão é normalmente definido para o registro npm público em https://registry.npmjs.org/.

Para verificar o valor do registro padrão atual, execute o comando:

npm get registry

Para mais informações sobre os arquivos de configuração do npm, consulte a documentação do arquivo de configuração do npm.