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.

Quem pode usar esse recurso?

Write access to the organization's public .github repository. Templates can be used by organization members who have permission to create workflows.

Observação

  • 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.
  • 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 saber mais, confira Reuse workflows.

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.

    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.