Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste artigo, você aprenderá a implantar e testar o GitHub Actions altamente disponível com arquivos do Azure no AKS (Serviço de Kubernetes do Azure).
Fluxos de trabalho de exemplo do GitHub Actions
O repositório tem três cargas de trabalho de exemplo na pasta de fluxo de trabalho padrão do GitHub para testar os executores do ARC auto-hospedados:
-
dotnet-using-container.yml: o Build do .NET usando contêineres instala o SDK do .NET e que restaura/compila/publica o aplicativo no próprio executor. -
dotnet-without-container.yml: o Build do .NET sem contêineres usa o recurso de contêiner de fluxo de trabalho para executar um contêiner do SDK do .NET e que compila dentro do aplicativo dentro do contêiner. O cache do NuGet é montado por padrão neste contêiner. -
container-service-test.yml: Os fluxos de trabalho de teste de contêiner e serviço também utilizam o recurso de contêineres para criar um contêiner Ubuntu e um serviço Redis. Ambos os contêineres são executados no mesmo Pod do AKS. O cache do NuGet também é montado por padrão neste contêiner.
Todos os três fluxos de trabalho têm um parâmetro de entrada para o nome do executor ARC a ser usado no campo runs-on: do fluxo de trabalho. Essa é a ARC_RUNNER_SCALESET_NAME="arc-runner-set" variável que definimos anteriormente. Para facilitar o teste, usamos a opção workflow_dispatch: nos três fluxos de trabalho para executar apenas esses fluxos de trabalho quando ele é solicitado manualmente. Na guia GitHub Actions do repositório, selecione um dos fluxos de trabalho e execute a carga de trabalho.
Depois que o fluxo de trabalho estiver em execução, ele solicitará um executor para ARC em execução no cluster do AKS. Depois que esse executor, um pod no Kubernetes, é alocado para o trabalho, o fluxo de trabalho é executado lá até a conclusão. Usamos a abordagem do executor efêmero para que o pod que executa o fluxo de trabalho seja destruído no final e um novo seja criado para a próxima execução do fluxo de trabalho.
Excluir os recursos
Quando estiver pronto, você poderá excluir todos os recursos criados neste guia usando os seguintes comandos:
# Delete ARC runners scale sets
helm delete "${ARC_RUNNER_SCALESET_NAME}" -n "${NAMESPACE_ARC_RUNNERS}" --wait
# Delete ARC runners scale set controller
helm delete "${ARC_CONTROLLER_NAME}" -n "${NAMESPACE_ARC_CONTROLLER}" --wait
# Delete Azure File share configurations
kubectl delete -f ./install/arc-runners-set-pv-pvc.yaml --wait
kubectl delete -f ./install/arc-runners-storage-class-files.yaml --wait
# Delete secrets
kubectl delete secret azure-storage-secret -n arc-runners --wait
kubectl delete secret ${ARC_RUNNER_GITHUB_SECRET_NAME} -n arc-runners --wait
# Delete container runner configmap pod spec
kubectl delete -f ./install/arc-runners-set-container-pod-spec.yaml --wait
# Delete namespaces
kubectl delete namespace ${NAMESPACE_ARC_RUNNERS}
kubectl delete namespace ${NAMESPACE_ARC_CONTROLLER}
Próximas etapas
Para saber mais sobre como implantar software de software livre no AKS (Serviço de Kubernetes do Azure), consulte o seguinte artigo:
Contribuidores
A Microsoft mantém este artigo. Os seguintes colaboradores o escreveram originalmente:
- Jorge Arterio | Consultor sênior de nuvem
- Jeff Patterson | Gerente de Produto Principal
- Rena Shah | Gerente de Produto Sênior
- Shekhar Singh Sorot | Gerente de Produto 2
- Erin Schaffer | Desenvolvedora de Conteúdo 2