Esta versão do GitHub Enterprise foi descontinuada em 2021-09-23. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, melhorar a segurança e novos recursos, upgrade to the latest version of GitHub Enterprise. Para ajuda com a atualização, contact GitHub Enterprise support.

Entendendo o GitHub Actions

Aprenda o básico de GitHub Actions, incluindo conceitos fundamentais e terminologia essencial.

Observação: GitHub Actions estava disponível para GitHub Enterprise Server 2.22 como um beta limitado. O beta terminou. GitHub Actions está agora geralmente disponível em GitHub Enterprise Server 3.0 ou posterior. Para obter mais informações, consulte as observações sobre a versão GitHub Enterprise Server 3.0.


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.

Visão Geral

GitHub Actions ajuda você a automatizar tarefas dentro de seu ciclo de vida de desenvolvimento de software. GitHub Actions são orientados por eventos, o que significa que você pode executar uma série de comandos após um evento especificado ocorrer. Por exemplo, cada vez que alguém cria um pull request para um repositório, você pode executar automaticamente um comando que executa um script de teste do software.

Este diagrama demonstra como você pode usar GitHub Actions para executar automaticamente seus scripts de teste de software. Um evento aciona automaticamente o fluxo de trabalho, que contém um trabalho. Em seguida, o trabalho usa etapas para controlar a ordem em que as ações são executadas. Estas ações são os comandos que automatizam o teste do seu software.

Visão geral do fluxo de trabalho

Componentes de GitHub Actions

Abaixo está uma lista dos múltiplos componentes de GitHub Actions que trabalham em conjunto para executar os trabalhos. Você pode ver como esses componentes interagem uns com os outros.

Visão geral do componente e do serviço

Fluxos de trabalho

O fluxo de trabalho é um procedimento automatizado que você adiciona ao seu repositório. Os fluxos de trabalho são constituídos por um ou mais trabalhos e podem ser programados ou ativados por um evento. O fluxo de trabalho pode ser usado para criar, testar, empacotar, publicar ou implantar um projeto em GitHub.

Eventos

Um evento é uma atividade específica que aciona um fluxo de trabalho. Por exemplo, uma atividade pode originar de GitHub quando alguém faz o push de um commit em um repositório ou quando são criados um problema ou um pull request. Também é possível usar o webhook de envio de repositórios para acionar um fluxo de trabalho quando ocorre um evento externo. Para obter uma lista completa de eventos que podem ser usados para acionar fluxos de trabalho, consulte Eventos que acionam fluxos de trabalho.

Trabalhos

Um trabalho é um conjunto de etapas executadas no mesmo executor. Por padrão, um fluxo de trabalho com vários trabalhos executará esses trabalhos em paralelo. Também é possível configurar um fluxo de trabalho para executar trabalhos sequencialmente. Por exemplo, um fluxo de trabalho pode ter dois trabalhos sequenciais que criam e testam códigos. em que o trabalho de teste depende do status do trabalho de criação. Se ocorrer uma falha no trabalho de criação, o trabalho de teste não será executado.

Etapas

Uma etapa é uma tarefa individual que pode executar comandos em um trabalho. Uma etapa pode ser uma ação ou um comando de shell. Cada etapa de um trabalho é executada no mesmo executor, permitindo que as ações naquele trabalho compartilhem dados entre si.

Ações

Ações são comandos autônomos combinados em etapas para criar um trabalho. As ações são o menor bloco de criação portátil de um fluxo de trabalho. Você pode criar as suas próprias ações ou usar ações criadas pela comunidade de GitHub. Para usar uma ação em um fluxo de trabalho, você deverá incluí-la como uma etapa.

Executores

Um executor é um servidor que tem oaplicativo do executor de GitHub Actions instalado. Você pode usar um executor hospedado em GitHub ou você pode hospedar seu próprio. Um executor escuta trabalhos disponíveis, executa um trabalho de cada vez e relata o progresso, os registros e os resultados de volta para GitHub. Executores hospedados em GitHub são baseados no Ubuntu Linux, Microsoft Windows e macOS, e cada trabalho em um fluxo de trabalho é executado em um novo ambiente virtual. Para obter informações sobre executores hospedados em GitHub, consulte "Sobre executores hospedados em GitHub." Se você precisar de um sistema operacional diferente ou precisar de uma configuração de hardware específica, você poderá hospedar seus próprios executores. Para obter informações sobre executores auto-hospedados, consulte "Hospedar seus próprios executores".

Criar um exemplo de fluxo de trabalho

GitHub Actions usa sintaxe de YAML para definir os eventos, trabalhos e etapas. Esses arquivos de YAML são armazenados no seu repositório de código em um diretório denominado .github/workflows.

Você pode criar um exemplo de fluxo de trabalho no repositório que aciona automaticamente uma série de comandos sempre que o código for carregado. Neste fluxo de trabalho, GitHub Actions verifica o código enviado, instala as dependências do software e executa bats -v.

  1. No seu repositório, crie o diretório .github/workflows/ para armazenar seus arquivos do fluxo de trabalho.
  2. No diretório .github/workflows/, crie um novo arquivo denominado learn-github-actions.yml e adicione o código a seguir.
    name: learn-github-actions
    on: [push]
    jobs:
      check-bats-version:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v2
          - uses: actions/setup-node@v2
            with:
              node-version: '14'
          - run: npm install -g bats
          - run: bats -v
    
  3. Faça commit dessas alterações e faça push para o seu repositório do GitHub.

Seu novo arquivo de fluxo de trabalho de GitHub Actions agora está instalado no seu repositório e será executado automaticamente toda vez que alguém fizer push de uma alteração no repositório. Para obter detalhes sobre o histórico de execução de um trabalho, consulte "Visualizar a atividade do fluxo de trabalho".

Entender o arquivo de fluxo de trabalho

Para ajudar você a entender como a sintaxe de YAML é usada para criar um arquivo de fluxo de trabalho, esta seção explica cada linha do exemplo Introdução:

name: learn-github-actions
Opcional - Como o nome do fluxo de trabalho irá aparecer na aba Ações do repositório de GitHub.
on: [push]
Especifica o evento que aciona automaticamente o arquivo do fluxo de trabalho. Este exemplo usa o evento push para que os trabalhos sejam executados toda vez que alguém fizer uma alteração no repositório. É possível definir o fluxo de trabalho para ser executado somente em determinados branches, caminhos ou tags. Para obter exemplos de sintaxe, incluindo ou excluindo branches, caminhos ou tags, consulte "Sintaxe de fluxo de trabalho para GitHub Actions"
jobs:
Agrupa todos os trabalhos executados no arquivo de fluxo de trabalho learn-github-actions.
check-bats-version:
Define o nome do trabalho check-bats-version armazenado na seção trabalhos.
  runs-on: ubuntu-latest
Configura o trabalho a ser executado em um executor do Ubuntu Linux. Isto significa que o trabalho será executado em uma nova máquina virtual hospedada pelo GitHub. Para obter exemplos de sintaxe usando outros executores, consulte "Sintaxe de fluxo de trabalho para GitHub Actions."
  steps:
Agrupa todos os passos são executados no trabalho check-bats-version. Cada item aninhado nesta seção é uma ação separada ou comando de shell.
    - uses: actions/checkout@v2
A palavra-chave usa diz ao trabalho para recuperar v2 da ação da comunidade com o nome actions/checkout@v2. Esta é uma ação que verifica seu repositório e o faz o download do runner, permitindo que você execute ações contra seu código (como, por exemplo, ferramentas de teste). Você deve usar a ação de checkout sempre que o fluxo de trabalho for executado no código do repositório ou você estiver usando uma ação definida no repositório.
    - uses: actions/setup-node@v2
      with:
        node-version: '14'
Esta etapa usa a ação actions/setup-node@v2 para instalar a versão especificada do pacote de software do no executor, que fornece a você acesso ao comando npm.
    - run: npm install -g bats
A palavra-chave executar diz ao trabalho para executar um comando no executor. Neste caso, você está usando o npm para instalar o pacote de teste do software bats.
    - run: bats -v
Por fim, você executará o comando bats com um parâmetro que produz a versão do software.

Visualizar o arquivo de fluxo de trabalho

Neste diagrama, você pode ver o arquivo de fluxo de trabalho que acabou de criar e como os componentes de GitHub Actions estão organizados em uma hierarquia. Cada etapa executa uma única ação ou comando de shell. As etapas 1 e 2 usam ações de comunidade pré-criadas. As etapas 3 e 4 executam comandos de shell diretamente no executor. Para encontrar mais ações pré-criadas para seus fluxos de trabalho, consulte "Encontrar e personalizar ações".

Visão geral do fluxo de trabalho

Visualizar a atividade do trabalho

Assim que o seu trabalho começar a ser executado, você poderá visualizar a atividade de cada etapa em GitHub.

  1. No GitHub Enterprise Server, navegue até a página principal do repositório.

  2. No nome do seu repositório, clique em Ações. Acesse o repositório

  3. Na barra lateral esquerda, clique no fluxo de trabalho que deseja ver. Captura de tela dos resultados do fluxo de trabalho

  4. Em "Execuções do fluxo de trabalho", clique no nome da execução que você deseja ver. Captura de tela das execuções do fluxo de trabalho

  5. Clique no nome do trabalho para ver os resultados de cada etapa. Captura de tela dos detalhes de execução do fluxo de trabalho

Próximas etapas

Para continuar aprendendo sobre GitHub Actions, consulte "Encontrar e personalizar ações".

Para entender como a cobrança funciona para GitHub Actions, consulte "Sobre cobrança para GitHub Actions".

Entrar em contato com o suporte

Se precisar de ajuda com algo relacionado com a configuração do fluxo de trabalho, como sintaxe, executores hospedados em GitHub, ou ações de criação, procure por um tópico existente ou comece um novo na categoria de Suporte à Comunidade GitHub GitHub Actions .

Se você tiver comentários ou solicitações de recursos para GitHub Actions, compartilhe-os na Formulário de feedback do GitHub Actions.

Contatar your site administrator para qualquer uma das seguintes opções, se o uso ou uso pretendido se enquadra nas categorias limite:

  • Se você acredita que sua conta foi restrita incorretamente
  • Se você encontrar um erro inesperado ao executar uma de suas Ações, por exemplo: um ID exclusivo
  • Se você encontrar uma situação onde o comportamento existente contradiz o esperado, mas nem sempre documentado, comportamento