Observação: no momento, não há suporte para os executores hospedados no GitHub no GitHub Enterprise Server. Você pode ver mais informações sobre o suporte futuro planejado no GitHub public roadmap.
Visão geral
GitHub Actions permite que você personalize seus fluxos de trabalho para atender � s necessidades únicas de seu aplicativo e equipe. Neste guia, discutiremos algumas das técnicas de personalização essenciais, como o uso de variáveis, a execução de scripts e o compartilhamento de dados e artefatos entre trabalhos.
Usar variáveis em seus fluxos de trabalho
GitHub Actions incluem variáveis de ambiente-padrão para cada execução de fluxo de trabalho. Se precisar usar variáveis de ambiente personalizadas, você pode defini-las no seu arquivo de fluxo de trabalho YAML. Este exemplo demonstra como criar variáveis personalizadas chamadas POSTGRES_HOST e POSTGRES_PORT. Em seguida, essas variáveis estão disponíveis para o script node client.js.
jobs:
  example-job:
      steps:
        - name: Connect to PostgreSQL
          run: node client.js
          env:
            POSTGRES_HOST: postgres
            POSTGRES_PORT: 5432
Para obter mais informações, confira "Como usar variáveis de ambiente".
Adicionar scripts ao seu fluxo de trabalho
Você pode usar ações para executar scripts e comandos de shell, que são executados no executor atribuído. Este exemplo demonstra como uma ação pode usar a palavra-chave run para executar npm install -g bats no executor.
jobs:
  example-job:
    steps:
      - run: npm install -g bats
Por exemplo, para executar um script como uma ação, você pode armazenar o script no repositório e fornecer o tipo do caminho e do shell.
jobs:
  example-job:
    steps:
      - name: Run build script
        run: ./.github/scripts/build.sh
        shell: bash
Para obter mais informações, confira "Sintaxe de fluxo de trabalho do GitHub Actions".
Compartilhar dados entre trabalhos
Se o seu trabalho gerar arquivos que você deseja compartilhar com outro trabalho no mesmo fluxo de trabalho ou se você quiser salvar os arquivos para referência posterior, armazene-os no GitHub como artefatos. Artefatos são os arquivos que surgem quando você compila e testa seu código. Por exemplo, os artefatos podem incluir arquivos binários ou de pacotes, resultados de testes, capturas de tela ou arquivos de log. Os artefatos estão associados � execução do fluxo de trabalho em que foram criados e podem ser usados por outro trabalho.
Por exemplo, você pode criar um arquivo e, em seguida, carregá-lo como um artefato.
jobs:
  example-job:
    name: Save output
    steps:
      - shell: bash
        run: |
          expr 1 + 1 > output.log
      - name: Upload output file
        uses: actions/upload-artifact@v2
        with:
          name: output-log-file
          path: output.log
Para baixar um artefato de uma execução de fluxo de trabalho separada, use a ação actions/download-artifact. Por exemplo, você pode baixar o artefato chamado output-log-file.
jobs:
  example-job:
    steps:
      - name: Download a single artifact
        uses: actions/download-artifact@v2
        with:
          name: output-log-file
Para baixar um artefato da mesma execução de fluxo de trabalho, o trabalho de download deve especificar needs: upload-job-name para que ele não seja iniciado até que o trabalho de upload seja concluído.
Para obter mais informações sobre artefatos, confira "Como persistir dados de fluxo de trabalho usando artefatos".
Próximas etapas
Para continuar aprendendo sobre o GitHub Actions, confira "Eventos que disparam fluxos de trabalho".