Fluxo de trabalho de definição de tarefas do AWS ECS

Fluxo de trabalho de definição de tarefas do AWS ECS

Configurei um dos meus serviços para ser implantado no ECS (EC2). Tenho a definição de serviço e tarefa configurada via terraform e para implantar estou usando ações do Github onde parece que preciso definir a definição de tarefa novamente.

Parece que ambos são necessários. Qual seria o fluxo de trabalho correto para que eu possa remover a definição de tarefa duplicada?

Há também o problema de que, uma vez que esta definição de tarefa tenha sido implantada por meio de ações do Github, a imagem que o terraform deseja reverter foi atualizada.

Responder1

Este é antigo, mas para referência futura.

O primeiro é necessário para ativar o serviço inicialmente (ao criar seu cluster pré-configurado).

Você pode considerar o segundo como uma opção para atualizar seuserviço(implantar uma nova versão da imagem) sobre a inicial durante a implantação do GitHub Actions (já que você pode alterar o ID da imagem e basicamente tudo o que você tem como opção de configuração na definição da tarefa).

Com relação ao terraform você pode adicionar uma regra de ciclo de vida para ignorar quaisquer alterações no image_id pré-configurado com algo assim noaws_ecs_service:

  lifecycle {
    ignore_changes = [task_definiton]
  }

um assunto bastante antigono projeto terraform-provider-aws em relação a como ele lida com alterações na definição de tarefas. Dê uma olhadaeste comentáriopara uma possível solução alternativa para seu caso de uso (postagem no blog sobre o tópico do autor do comentário).

Abaixo você pode veroutro comentáriovinculando umSolução Github Actions pronta para uso com um exemplo de código terraform.

informação relacionada