Sobre os executores hospedados de AE

GitHub AE oferece máquinas virtuais hospedadas de forma personalizável para executar fluxos de trabalho de GitHub Actions. Você pode selecionar o hardware, trazer sua própria imagem de máquina e habilitar um endereço de IP para a rede com o seu AE hosted runner.

GitHub Actions está disponível com GitHub Free, GitHub Pro, GitHub Free para organizações, GitHub Team, GitHub Enterprise Cloud e GitHub AE. GitHub Actions não está disponível para repositórios privados pertencentes a contas usando os planos de legado por repositório.

Observação: GitHub Actions está atualmente na versão beta para GitHub AE.

Sobre AE hosted runners

Um AE hosted runner é uma máquina virtual hospedada por GitHub com o serviço do executor de GitHub Actions instalado.

GitHub AE permite criar e personalizar AE hosted runners usando imagens do Ubuntu ou Windows. Você pode selecionar o tamanho da máquina que deseja e configurar redes enrijecidas de segurança para elas. AE hosted runners são totalmente gerenciados e dimensionados automaticamente por GitHub.

Cada trabalho do fluxo de trabalho é executado em uma nova instância do AE hosted runner e você poderá executar fluxos de trabalho diretamente na máquina virtual ou em um contêiner do Docker. Todas as etapas da tarefa executada na mesma instância, permitindo que as ações desse trabalho compartilhem informações que usam o sistema de arquivos de AE hosted runner.

AE hosted runners são os únicos executores disponíveis para GitHub AE e os executores auto-hospedados não estão disponíveis.

Para adicionar AE hosted runners à sua organização ou empresa, consulte "Adicionar AE hosted runners".

Recomendações de grupo para AE hosted runners

Os seus AE hosted runners estão alocados no mesmo grupo que a sua instância de GitHub AE. Nenhum outro cliente tem acesso a este grupo e, como resultado, AE hosted runners não são compartilhados com nenhum outro cliente.

Gerenciar seus AE hosted runners

Durante o beta de AE hosted runner, você pode gerenciar seus AE hosted runners entrando em contato com o suporte de GitHub. Por exemplo, o suporte de GitHub pode ajudá-lo a adicionar um novo AE hosted runner, atribuir etiquetas ou transferir um AE hosted runner para um grupo diferente.

Cobrança

GitHub Actions está atualmente em beta para GitHub AE. Durante este período beta, AE hosted runners não são faturados e podem ser usados grátis.

Assim que a versão beta terminar, o uso faturado incluirá a atividade completa de instâncias ativas em seus conjuntos de executores hospedados de AE. Isto inclui:

  • Tempo de trabalho - minutos gastos executando o trabalho de ações.
  • Gerenciamento - minutos gastos criando novas imagens de máquinas e tempo ocioso criado como resultado do comportamento da escala automática desejada.

A precificação será escalada linearmente com núcleos. Por exemplo, 4 núcleos serão o dobro do preço de 2 núcleos. Os VMs do Windows terão um preço superior aos VMs do Linux.

Especificações de hardware

AE hosted runners estão disponíveis em uma série de máquinas virtuais hospedadas no Microsoft Azure. Dependendo da disponibilidade regional, você pode escolher entre Standard_Das_v4, Standard_DS_v2, Standard_Fs_v2 series. Algumas regiões também incluem executores de GPU com base no Standard_NCs_v3.

Para obter mais informações sobre os recursos da máquina do Azure, consulte "Tamanhos para máquinas virtuais no Azure" na documentação do Microsoft Azure.

Para determinar qual executor realizou um trabalho, você pode rever os logs do fluxo de trabalho. Para obter mais informações, consulte "Visualizar histórico de execução de fluxo de trabalho".

Especificações do software

Você pode usar AE hosted runners com imagens padrão do sistema operacional ou pode adicionar imagens que você criou.

Imagens padrão do sistema operacional

Estas imagens incluem apenas as ferramentas padrão do sistema operacional:

  • Ubuntu 18.04 LTS (Canonical)
  • Ubuntu 16.04 LTS (Canonical)
  • Windows Server 2019 (Microsoft)
  • Windows Server 2016 (Microsoft)

Imagens personalizadas do sistema operacional

Você pode criar suas próprias imagens de OS no Azure e adicioná-las a GitHub AE como AE hosted runners. Para obter mais informações, consulte "Adicionar um AE hosted runner com uma imagem personalizada".

Especificações de rede

Opcionalmente, você pode habilitar um endereço de IP público estático e fixo para seus AE hosted runners. Se habilitados, todos os AE hosted runners na sua instância compartilharão uma faixa de 2 a 4 endereços IP, e irão comunicar-se usando as portas nesses endereços.

Se você não habilitar endereços IP públicos estáticos, os AE hosted runners terão, subsequentemente, as mesmas faixas de endereços IP que os centros de dados do Azure. Os pacotes ICMP de entrada estão bloqueados. Portanto, não se espera que os comandos ping ou traceroute funcionem.

Para obter uma lista de intervalos de endereços IP que GitHub Actions usa para AE hosted runner, você pode usar a API REST de GitHub. Para obter mais informações, consulte a chave de ações na resposta do ponto de extremidade "Obtenha as metainformações do GitHub". Você pode usar essa lista de endereços IP se precisar de uma lista de permissão para evitar acesso não autorizado para os seus recursos internos.

A lista de endereços IP de GitHub Actions retornados pela API é atualizada uma vez por semana.

Privilégios administrativos para AE hosted runners

As máquinas virtuais do Linux são executadas, usando sudo sem senha. Quando precisar executar comandos ou instalar ferramentas que exigem mais permissões que o usuário atual possui, você pode usar sudo sem a necessidade de fornecer uma senha. Para obter mais informações, consulte o "Manual do Sudo".

As máquinas virtuais do Windows estão configuradas para ser executadas como administradores com Controle de Conta de Usuário (UAC) desativado. Para obter mais informações, consulte "Como funciona o Controle de Conta de Usuário" na documentação do Windows.

Sistemas de arquivos

O GitHub executa ações e comandos de shell em diretórios específicos na máquina virtual. Os caminhos dos arquivos nas máquinas virtuais não são estáticos. Use as variáveis de ambiente que GitHub fornece para construir caminhos de arquivos para os diretórios home, workspace e workflow.

DiretórioVariável de ambienteDescrição
casaHOMEContém dados relacionados ao usuário. Por exemplo, esse diretório pode conter credenciais de uma tentativa de login.
área de trabalhoGITHUB_WORKSPACEAs ações e comandos do shell executados neste diretório. Uma ação pode modificar o conteúdo desse diretório, que fica acessível nas ações subsequentes.
workflow/event.jsonGITHUB_EVENT_PATHA carga POST do evento webhook que acionou o fluxo de trabalho. O GitHub o rescreve sempre que uma ação é executada para isolar o conteúdo do arquivo entre as ações.

Para obter uma lista das variáveis de ambiente que GitHub cria para cada fluxo de trabalho, consulte "Usar variáveis de ambiente".

Sistema de arquivos do contêiner Docker

Ações executadas em contêineres Docker têm diretórios estáticos no caminho /github. No entanto, é altamente recomendável usar as variáveis de ambiente padrão para elaborar caminhos de arquivos em contêineres do Docker.

O GitHub reserva o prefixo de caminho /github e cria três diretórios para ações.

  • /github/home
  • /github/workspace - Observação: GitHub Actions deve ser executado pelo usuário do Docker padrão (raiz). Certifique-se de seu arquivo do Dockerfile não defina a instrução USUÁRIO. Caso contrário, você não conseguirá acessar GITHUB_WORKSPACE.
  • /github/workflow

Esse documento ajudou você?Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.