# Guia de Início Rápido do GitHub Packages

Publique em GitHub Packages com GitHub Actions.

> \[!NOTE]
> No momento, não há suporte para executores hospedados no GitHub Enterprise Server no GitHub.

## Introdução

Neste guia, você criará um GitHub Actions fluxo de trabalho para testar seu código e depois publicá-lo em GitHub Packages.

## Publicar o seu pacote

1. Crie um novo repositório no GitHub, adicionando o `.gitignore` para Node. Para saber mais, confira [Criar um repositório](/pt/enterprise-server@3.22/repositories/creating-and-managing-repositories/creating-a-new-repository).

2. Clone o repositório em seu computador local.

   ```shell
   git clone https://YOUR-HOSTNAME/YOUR-USERNAME/YOUR-REPOSITORY.git
   cd YOUR-REPOSITORY
   ```

3. Crie um arquivo `index.js` e adicione um alerta básico para dizer "Olá, mundo!"

   ```javascript copy
   console.log("Hello, World!");
   ```

4. Inicialize um pacote npm com `npm init`. No assistente de inicialização do pacote, insira o pacote com o nome *`@YOUR-USERNAME/YOUR-REPOSITORY`* e defina o script de teste como `exit 0`. Isso vai gerar um arquivo `package.json` com informações sobre o pacote.

   ```shell
   $ npm init
     ...
     package name: @YOUR-USERNAME/YOUR-REPOSITORY
     ...
     test command: exit 0
     ...
   ```

5. Execute `npm install` para gerar o `package-lock.json` arquivo e, em seguida, confirme e envie suas alterações por push para GitHub.

   ```shell
   npm install
   git add index.js package.json package-lock.json
   git commit -m "initialize npm package"
   git push
   ```

6. Crie um diretório `.github/workflows`. Nesse diretório, crie um arquivo chamado `release-package.yml`.

7. Copie o seguinte conteúdo YAML para o `release-package.yml` arquivo, substituindo `YOUR-HOSTNAME` pelo nome da sua empresa.

   ```yaml copy
   name: Node.js Package

   on:
     release:
       types: [created]

   jobs:
     build:
       runs-on: ubuntu-latest
       steps:
         - uses: actions/checkout@v6
         - uses: actions/setup-node@v7
           with:
             node-version: 20
         - run: npm ci
         - run: npm test

     publish-gpr:
       needs: build
       runs-on: ubuntu-latest
       permissions:
         packages: write
         contents: read
       steps:
         - uses: actions/checkout@v6
         - uses: actions/setup-node@v7
           with:
             node-version: 20
             registry-url: https://npm.YOUR-HOSTNAME.com/
         - run: npm ci
         - run: npm publish
           env:
             NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
   ```

8. Informe ao npm os escopos e o registro nos quais os pacotes serão publicados usando um dos seguintes métodos:
   * Adicione um arquivo de configuração do npm ao repositório criando um arquivo `.npmrc` no diretório raiz com os conteúdos:

     ```shell
     @YOUR-USERNAME:registry=https://npm.pkg.github.com
     ```

   * Edite o arquivo `package.json` e especifique a chave `publishConfig`:

     ```shell
     "publishConfig": {
       "@YOUR-USERNAME:registry": "https://npm.pkg.github.com"
     }
     ```

9. Confirme e envie suas alterações por push para GitHub.

   ```shell
   $ git add .github/workflows/release-package.yml
   # Also add the file you created or edited in the previous step.
   $ git add .npmrc or package.json
   $ git commit -m "workflow to publish package"
   $ git push
   ```

10. O fluxo de trabalho que você criou será executado sempre que uma nova versão for criada no seu repositório. Se os testes passarem, o pacote será publicado em GitHub Packages.

    Para testar isso, procure a guia **Código** no repositório e crie uma versão. Para obter mais informações, confira [Como gerenciar as versões do repositório](/pt/enterprise-server@3.22/repositories/releasing-projects-on-github/managing-releases-in-a-repository#creating-a-release).

## Visualizar o seu pacote publicado

Você pode ver todos os pacotes que você publicou.

1. Em GitHub, acesse a página principal do repositório.
2. Na barra lateral direita do repositório, clique em **Pacotes**.

   ![Captura de tela da barra lateral da página do repositório. A seção "Pacotes" é contornada em laranja escuro.](/assets/images/help/package-registry/packages-from-repo.png)
3. Procure e clique no nome do pacote que deseja ver.

## Instalar um pacote publicado

Agora que você publicou o pacote, você vai querer usá-lo como uma dependência nos seus projetos. Para saber mais, confira [Trabalhando com o repositório npm](/pt/enterprise-server@3.22/packages/working-with-a-github-packages-registry/working-with-the-npm-registry#installing-a-package).

## Próximas etapas

O fluxo de trabalho básico que você acabou de adicionar é executado sempre que uma nova versão for criada no seu repositório. Mas este é apenas o começo do que você pode fazer com GitHub Packages. Pode publicar o seu pacote em vários registros com um único fluxo de trabalho, acionar o fluxo de trabalho para ser executado em eventos diferentes, como um pull request mesclado, gerenciar contêineres, entre outros.

Combinar GitHub Packages e GitHub Actions pode ajudar você a automatizar quase todos os aspectos de seus processos de desenvolvimento de aplicativos. Pronto para começar? Aqui estão alguns recursos úteis para dar os próximos passos com GitHub Packages e GitHub Actions:

* [Aprenda sobre o GitHub Packages](/pt/enterprise-server@3.22/packages/learn-github-packages) para um tutorial detalhado sobre os pacotes do GitHub
* [Escrevendo fluxos de trabalho](/pt/enterprise-server@3.22/actions/how-tos/write-workflows) para um tutorial detalhado sobre o GitHub Actions
* [Trabalhar com um registro do GitHub Packages](/pt/enterprise-server@3.22/packages/working-with-a-github-packages-registry) para casos de uso e exemplos específicos