Gerenciar pacotes do Node.js

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

Informações gerais

Para se familiarizar com os pacotes do Node.js no Artifact Registry, consulte o quickstart.

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 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 as 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, os 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 global, do projeto ou do usuário.

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

Repositórios do Artifact Registry

Recomendamos definir a lista de repositórios no arquivo de configuração por projeto. Geralmente, esse arquivo está no mesmo diretório que o arquivo package.json no 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 sistema de controle de origem, faça o seguinte:

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

Armazene suas credenciais do Artifact Registry no arquivo de configuração por usuário para que elas não fiquem disponíveis a 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 auxiliar de credenciais do Artifact Registry é armazenado no registro npm público e não requer autenticação 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.