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.
-
Se ele ainda não existir, crie um novo repositório público chamado
.github
na sua organização. -
Crie um diretório com o nome
workflow-templates
. -
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
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
-
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 chamadoocto-organization-ci.properties.json
contém os metadados para o arquivo de fluxo de trabalho chamadoocto-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": "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 chamadoexample-icon.svg
é referenciado comoexample-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
.
- Um arquivo SVG armazenado no diretório de
-
categories
- Opcional. Define as categorias em que o fluxo de trabalho é mostrado. Você pode usar nomes de categoria das seguintes listas:- Nomes de categorias gerais do repositório starter-workflows.
- Linguagens Linguist da lista de repositório em linguist.
- Pilhas de tecnologia com suporte da lista no repositório starter-workflows.
-
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.