Visão geral
Use jobs.<job_id>.runs-on
para definir o tipo de computador no qual o trabalho será executado.
-
O computador de destino pode ser um executor auto-hospedado.
-
Você pode direcionar executores com base nos rótulos atribuídos a eles.
-
Você pode fornecer
runs-on
como:- uma única cadeia de caracteres
- uma única variável que contém uma cadeia de caracteres
- uma matriz de cadeias de caracteres, variáveis que contêm cadeias de caracteres ou uma combinação de ambas
- um par de
key: value
usando as chavesgroup
oulabel
-
Se você especificar uma matriz de cadeias de caracteres ou variáveis, o fluxo de trabalho será executado em qualquer executor que corresponda a todos os valores
runs-on
especificados. Por exemplo, aqui o trabalho só será executado em um executor auto-hospedado que tenha os rótuloslinux
,x64
egpu
:runs-on: [self-hosted, linux, x64, gpu]
Para obter mais informações, confira "Como escolher executores auto-hospedados".
-
Você pode misturar cadeias de caracteres e variáveis em uma matriz. Por exemplo:
on: workflow_dispatch: inputs: chosen-os: required: true type: choice options: - Ubuntu - macOS jobs: test: runs-on: [self-hosted, "${{ inputs.chosen-os }}"] steps: - run: echo Hello world!
-
Se você quiser executar seu fluxo de trabalho em vários computadores, use
jobs.<job_id>.strategy
.
Para especificar um executor auto-hospedado para seu trabalho, configure runs-on
no arquivo de fluxo de trabalho com rótulos do executor auto-hospedado.
Todos os executores auto-hospedados têm o rótulo self-hosted
. Se você só usar esse rótulo, isso selecionará qualquer executor auto-hospedado. Para selecionar os executores que atendem a determinados critérios, como sistema operacional ou arquitetura, recomendamos fornecer uma matriz de rótulos que começa com self-hosted
(isso precisa ser listado primeiro) e, em seguida, inclui rótulos adicionais, conforme necessário. Quando você especificar uma matriz de rótulos, os trabalhos serão colocados na fila nos executores que têm todos os rótulos especificados.
Embora o rótulo self-hosted
não seja necessário, recomendamos fortemente especificá-lo ao usar executores auto-hospedados para garantir que o seu trabalho não especifique acidentalmente nenhum executor atual ou futuro hospedado no GitHub.
Exemplo: Usando etiquetas para seleção do executor
runs-on: [self-hosted, linux]
Para obter mais informações, confira "Sobre executores auto-hospedados" e "Usar os executores auto-hospedados em um fluxo de trabalho."