actions-marketplace-validations/Github self-hosted runners alocados dinamicamente na AWS como VMs EC2 (sob demanda)
Cria a EC2, registra no Github como self-hosted runner e a finaliza quando a tarefa termina
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
- Runtime
- Deprecated runtime
Inputs
| name | description | required | default |
|---|---|---|---|
| mode | Informe - 'start' - para criar cria a instancia; - 'stop' - para finalizar a instancia criada. | yes | — |
| github-token | O "GitHub Personal Access Token" com escopo 'repo' que será utilizado na integração | yes | — |
| ec2-image-id | O Id da AWS EC2 AMI que será utilizada. A AMI deverá estar disponível para uso na conta ou ser criada nela caso requerido. TODO: Idealizar o roadmap e ciclo de vida das AMIs e disponibilizar em conta centralizada com página informativa. Avaliar AMI privadas na AWS Marketplace Esse parâmetro é requerido caso 'mode: start' | no | — |
| ec2-instance-type | Tipo da instancia EC2. Veja: https://aws.amazon.com/pt/ec2/instance-types/ Esse parâmetro é requerido caso 'mode: start' | no | — |
| subnet-id | Esse parâmetro é requerido caso 'mode: start' | no | — |
| security-group-id | EC2 Security Group Id. O runner não requer qualquer trafico de entrada (inbound), porém o trafico de saída precisa estar liberado (outbound) TODO: Restrigir ao necessário o tráfico de saída de acordo com o propósito da AMI para a etapa da esteira Esse parâmetro é requerido caso 'mode: start' | no | — |
| label | Um nome único para o runner O rótulo é utilizado para remover o runner do GitHub quando o ele não é mais necessário Esse parâmetro é requerido caso 'mode: start' | no | — |
| ec2-instance-id | O id da instância ECS criada para o runner. É retornado no término da ação utilizando o parâmetro "mode: start" Esse id é utilizado para encerrar a instância quando executada a ação com o parâmetro: "mode: stop" | no | — |
| iam-role-name | O nome da IAM Role que deverá ser incluída na EC2 | no | — |
| aws-resource-tags | Tags que deverão ser anexadas na instância EC2 e no volume EBS utilizado Siga o exemplo: '[{"Key": "Ambiente", "Value": "Lab"}, {"Key": "Projeto", "Value": "ZUP CI/CD Workshop"}], ...' | no | [] |
Outputs
| name | description |
|---|---|
| label | O nome único do label associado ao runner O label é utilizado para: - 'runs-on' valor que determina onde o job será executado; - para remover o runner da conta no github associado ao token quando ele não é mais requerido |
| ec2-instance-id | O Id da instância EC2 criada na AWS Esse valor é utilizado para encerrar a instância quando ela não é mais necessária |