Neste guia, você criará um fluxo de trabalho de Actions para testar seu código e, em seguida, publicá-lo em Packages.
Crie um repositório no adicionando o
.gitignore
ao Node. Para saber mais, confira Criar um repositório.Clone o repositório em seu computador local.
git clone https://.com/YOUR-USERNAME/YOUR-REPOSITORY.git cd YOUR-REPOSITORY
Crie um arquivo
index.js
e adicione um alerta básico para dizer "Olá, mundo!"JavaScript console.log("Hello, World!");
console.log("Hello, World!");
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 comoexit 0
. Isso vai gerar um arquivopackage.json
com informações sobre o pacote.$ npm init ... package name: @YOUR-USERNAME/YOUR-REPOSITORY ... test command: exit 0 ...
Execute
npm install
para gerar o arquivopackage-lock.json
e faça commit e efetue push das alterações para o .npm install git add index.js package.json package-lock.json git commit -m "initialize npm package" git push
Crie um diretório
./workflows
. Nesse diretório, crie um arquivo chamadorelease-package.yml
.Copie o conteúdo YAML a seguir para o arquivo
release-package.yml
.YAML name: Node.js Package on: release: types: [created] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 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@v4 - uses: actions/setup-node@v4 with: node-version: 20 registry-url: https://npm.pkg..com/ - run: npm ci - run: npm publish env: NODE_AUTH_TOKEN: ${{secrets._TOKEN}}
name: Node.js Package on: release: types: [created] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 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@v4 - uses: actions/setup-node@v4 with: node-version: 20 registry-url: https://npm.pkg..com/ - run: npm ci - run: npm publish env: NODE_AUTH_TOKEN: ${{secrets._TOKEN}}
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:@YOUR-USERNAME:registry=https://npm.pkg..com
Edite o arquivo
package.json
e especifique a chavepublishConfig
:"publishConfig": { "@YOUR-USERNAME:registry": "https://npm.pkg..com" }
Faça commit e faça push das suas alterações para .
$ git add ./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
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 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.
Você pode ver todos os pacotes que você publicou.
Em , acesse a página principal do repositório.
Na barra lateral direita do repositório, clique em Pacotes.
Procure e clique no nome do pacote que deseja ver.
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 registro npm.
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 início do que você pode fazer com 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 Packages e Actions pode ajudá-lo a automatizar quase todos os aspectos dos processos de desenvolvimento do seu aplicativo. Pronto para começar? Aqui estão alguns recursos úteis para dar seguir as próximas etapas com Packages e Actions:
- Aprenda sobre o Packages para um tutorial detalhado sobre os pacotes do
- Escrevendo fluxos de trabalho para um tutorial detalhado sobre o Actions
- Trabalhar com um registro do Packages para casos de uso e exemplos específicos