Observação: Executores hospedados em GitHub não são atualmente compatíveis com GitHub Enterprise Server. Você pode ver mais informações sobre suporte futuro planejado no Itinerário público do GitHub.
Introdução
Neste guia, você criará um fluxo de trabalho de GitHub Actions para testar seu código e, em seguida, publicá-lo em GitHub Package Registry.
Publicar o seu pacote
-
Crie um novo repositório em GitHub, adicionando o
.gitignore
ao Node. Crie um repositório privado se você desejar excluir este pacote mais tarde. O pacotes públicos não podem ser excluídos. For more information, see "Criar um novo repositório." -
Clone o repositório para a sua máquina local.
$ git clone https://github.com/YOUR-USERNAME/YOUR-REPOSITORY.git $ cd YOUR-REPOSITORY
-
Crie um arquivo
index.js
e adicione um alerta básico que diga "Hello world!"JavaScript alert("Hello, World!");
-
Inicialize um pacote npm com
npm init
. No assistente de inicialização de pacote, insira seu pacote com o nome:@YOUR-USERNAME/YOUR-REPOSITORY
e defina o script de teste paraexit 0
. Isto irá gerar um arquivopackage.json
com informações sobre o seu pacote.$ npm init ... package name: @YOUR-USERNAME/YOUR-REPOSITORY ... test command: exit 0 ...
-
Execute o
npm install
para gerar o arquivopackage-lock.json
e, em seguida, faça o commit e push das suas alterações para GitHub.$ npm install $ git add index.js package.json package-lock.json $ git commit -m "initialize npm package" $ git push
-
Crie um diretório
.github/workflows
. Nesse diretório, crie um arquivo denominadorelease-package.yml
. -
Copiar o conteúdo YAML a seguir no arquivo
release-package.yml
.YAML name: Node.js Package on: release: types: [created] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: node-version: 12 - run: npm ci - run: npm test publish-gpr: needs: build runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: node-version: 12 registry-url: https://npm.pkg.github.com/ - run: npm ci - run: npm publish env: NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
-
Diga ao NPM quais escopos e registros publicam pacotes usando um dos seguintes métodos:
- Adicione um arquivo de configuração do NPM para o repositório, criando um arquivo
.npmrc
no diretório raiz com o conteúdo:@YOUR-USERNAME:registry=https://npm.pkg.github.com
- Edite o arquivo
package.json
e especifique a chavepublishConfig
:"publishConfig": { "@YOUR-USERNAME:registry": "https://npm.pkg.github.com" }
- Adicione um arquivo de configuração do NPM para o repositório, criando um arquivo
-
Faça commit e faça push das suas alterações para GitHub.
$ 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
-
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 Package Registry.
Para testar isso, acesse a guia Código no repositório e crie uma nova versão. Para obter mais informações, consulte "Gerenciando versões em um repositório."
Visualizar o seu pacote publicado
Você pode ver todos os pacotes que você publicou.
-
No your GitHub Enterprise Server instance, navegue até a página principal do repositório.
-
À direita da lista de arquivos, clique em Packages (Pacotes).
-
Clique no nome do pacote que você deseja visualizar.
Instalar um pacote publicado
Agora que você publicou o pacote, você vai querer usá-lo como uma dependência nos seus projetos. Para obter mais informações, consulte "Trabalhando com o registro npm".
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 início do que você pode fazer com GitHub Package Registry. 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 Package Registry e GitHub 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 GitHub Package Registry e GitHub Actions:
- "Aprenda sobre GitHub Package Registry" para obter um tutorial aprofundado no GitHub Packages
- "Aprenda sobre GitHub Actions" para obter um tutorial aprofundado no GitHub Actions
- "Trabalhando com um registro de GitHub Package Registry" para casos e exemplos de usos específicos