Melhor estratégia de CD para implantações do Kubernetes

Nossa fase atual de implantação de IC funciona assim:

Construa os contêineres.Marque as imagens como"latest" e< commit hash >.Envie imagens para o repositório.Invoque a atualização contínua nos RCs apropriados.

Isso tem funcionado muito bem em implantações baseadas em RC, mas agora que oDeployment Se o objeto estiver se tornando mais estável e um recurso subjacente, queremos aproveitar essa abstração em nossos esquemas de implantação e fases de desenvolvimento atuais.

Estou com problemas para encontrar uma maneira sensata de automatizar a atualização de umDeployment com o fluxo de trabalho do IC. O que eu tenho experimentado é dividir os repositórios Git e fazer algo como:

[App Build] Crie os contêineres.[App Build] Marque as imagens como"latest" e< commit hash >.[App Build] Empurre as imagens para o repositório.[Compilação do aplicativo] Invoque a compilação do aplicativoDeployment repo, passando pelo hash de confirmação atual.[Deployment Build] Interpole tokens de arquivo de manifesto (atualmente, apenas o hash de confirmação passado, por exemplo,image: app-%%COMMIT_HASH%%)[Deployment Build] Aplique o manifesto atualizado ao apropriadoDeployment Recursos).

Certamente, embora haja uma maneira melhor de lidar com isso. Seria ótimo se oDeployment monitorado para alterações de hash da tag "mais recente" da imagem ... talvez já exista? Eu não tive sucesso com isso. Quaisquer pensamentos ou idéias sobre como lidar melhor com a implantação deDeployment seria apreciado :)

questionAnswers(2)

yourAnswerToTheQuestion