Skip to main content

Criar modelos de fluxo de trabalho para sua organização

Saiba como você pode criar modelos de fluxo de trabalho para ajudar as pessoas de sua equipe a adicionar novos fluxos de trabalho com mais facilidade.

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

Os modelos de fluxo de trabalho permitem que todos em sua organização que tenham permissão para criar fluxos de trabalho façam isso com mais rapidez e facilidade. Ao criar um fluxo de trabalho, você pode escolher um modelo de fluxo de trabalho, e o trabalho de escrever o fluxo de trabalho, no todo ou em parte, será feito para você. Você pode usar o modelo de fluxo de trabalho como ponto de partida para criar seu fluxo de trabalho personalizado ou usá-lo no estado em que se encontra. Isso não só poupa tempo, como promove consistência e práticas recomendadas na sua organização.

O GitHub fornece modelos de fluxo de trabalho prontos para uso para as seguintes categorias de alto nível:

  • Implantação (CD) . Para obter mais informações, confira "Sobre a implantação contínua com o GitHub Actions".

  • CI (integração contínua) . Para obter mais informações, confira "Sobre a integração contínua com o GitHub Actions".

  • Automação. Os modelos de fluxo de trabalho de automação oferecem soluções para automatizar os fluxos de trabalho, como a triagem de solicitações de pull e a aplicação de um rótulo com base nos caminhos modificados na solicitação de pull ou a saudação de usuários que estão colaborando pela primeira vez no repositório.

Note

Como os modelos de fluxo de trabalho exigem um repositório público do .github, eles não estão disponíveis para o Enterprise Managed Users.

Criar um modelo de fluxo de trabalho

Os modelos de fluxo de trabalho podem ser criados por usuários com acesso de gravação ao repositório público do .github da organização. Eles poderão ser usados pelos integrantes da organização com permissão para criar fluxos de trabalho.

Note

Para evitar a duplicação entre modelos de fluxo de trabalho, você pode chamar fluxos de trabalho reutilizáveis por meio de um fluxo de trabalho. Isso pode ajudar a manter seus fluxos de trabalho de forma mais fácil. Para obter mais informações, confira "Reutilizar fluxos de trabalho".

Esse procedimento demonstra como criar um modelo de fluxo de trabalho e um arquivo de metadados. O arquivo de metadados descreve como os modelos de fluxo de trabalho serão apresentados aos usuários quando eles criarem um novo fluxo de trabalho.

  1. Se ele ainda não existir, crie um novo repositório público chamado .github na sua organização.

  2. Crie um diretório com o nome workflow-templates.

  3. Crie o arquivo de fluxo de trabalho no diretório workflow-templates.

    Caso precise se referir ao branch padrão de um repositório, use o espaço reservado $default-branch. Quando um fluxo de trabalho é criado, o espaço reservado será automaticamente substituído pelo nome do branch padrão do repositório.

    Note

    Os seguintes valores na chave runs-on também são tratados como espaços reservados:

    • "ubuntu-latest" é substituído por "[ auto-hospedado ]"
    • "windows-latest" é substituído por "[ auto-hospedado, windows ]"
    • "macos-latest" é substituído por "[ auto-hospedado, macOS ]"

    Por exemplo, este arquivo chamado octo-organization-ci.yml demonstra um fluxo de trabalho básico.

    YAML
    name: Octo Organization CI
    
    on:
      push:
        branches: [ $default-branch ]
      pull_request:
        branches: [ $default-branch ]
    
    jobs:
      build:
        runs-on: ubuntu-latest
    
        steps:
          - uses: actions/checkout@v4
    
          - name: Run a one-line script
            run: echo Hello from Octo Organization
    
  4. Crie um arquivo de metadados no diretório workflow-templates. O arquivo de metadados precisa ter o mesmo nome do arquivo de fluxo de trabalho, mas, em vez da extensão .yml, é preciso acrescentar .properties.json a ele. Por exemplo, este arquivo chamado octo-organization-ci.properties.json contém os metadados para o arquivo de fluxo de trabalho chamado octo-organization-ci.yml:

    JSON
    {
        "name": "Octo Organization Workflow",
        "description": "Octo Organization CI workflow template.",
        "iconName": "example-icon",
        "categories": [
            "Go"
        ],
        "filePatterns": [
            "package.json$",
            "^Dockerfile",
            ".*\\.md$"
        ]
    }
    
    • name - Obrigatório. Nome do fluxo de trabalho. É exibido na lista de fluxos de trabalho disponíveis.

    • description - Obrigatório. Descrição do fluxo de trabalho. É exibido na lista de fluxos de trabalho disponíveis.

    • iconName - Opcional. Especifica um ícone para o fluxo de trabalho exibido na lista correspondente. iconName pode ser de um dos seguintes tipos:

      • Um arquivo SVG armazenado no diretório de workflow-templates. Para fazer referência a um arquivo, o valor deve ser o nome do arquivo sem a extensão dele. Por exemplo, um arquivo SVG chamado example-icon.svg é referenciado como example-icon.
      • Um ícone do conjunto de Octicons do GitHub. Para fazer referência a um octicon, o valor dele deve ser octicon <icon name>. Por exemplo, octicon smiley.
    • categories - Opcional. Define as categorias em que o fluxo de trabalho é mostrado. Você pode usar nomes de categoria das seguintes listas:

    • filePatterns - Opcional. Permite que o modelo seja usado caso o repositório do usuário tenha um arquivo no diretório raiz que corresponda a uma expressão regular definida.

Para adicionar outro modelo de fluxo de trabalho, adicione seus arquivos ao mesmo diretório workflow-templates.

Próximas etapas

Para continuar aprendendo sobre o GitHub Actions, confira "Usando modelos de fluxo de trabalho".