Skip to content

Latest commit

 

History

History
108 lines (75 loc) · 3.24 KB

File metadata and controls

108 lines (75 loc) · 3.24 KB

aws-codedeploy-icon

CodeDeploy


📌 Índice


Introdução

O CodeDeploy é um serviço de implantação que automotiza implatações de aplicações em instâncias EC2, funções lambdas ou serviços ECS.

É importante salientar que o CodeDeploy ≠ Elastic Beanstalk.

  • Plataformas computacionais suportadas pelo CodeDeploy: EC2/Servidores Locais, Lambda ou ECS

Passo a passo

  • Cada instância EC2/Servidores locais(on-premises) devem estar executando o CodeDeploy Agent para o CodeDeploy funcionar

  • O CodeDeploy Agent ficará perguntando para o AWS CodeDeploy se existe algum implementação(deploy) para ser feito

  • Caso haja um, será extraído do repositório o código-fonte da aplicação + arquivo appspec.yml do Bitbucket, Github ou S3.

  • As instâncias EC2 irão executar as instruções de implantação(deploy) no arquivo appspec.yml

  • Por fim será relatado pelo CodeDeploy Agent se o resultado da implantação(deploy) foi de sucesso ou falha para o serviço CodeDeploy

  • Exemplo do arquivo appspec.yml

version: 0.0
os: linux

files: 
	- source: Config/config.txt
		destination: /webapps/Config
	- source: source
		destination: /webapps/myApp

hooks:
	BeforeInstall: 
		- location: Scripts/UnzipResourceBundle.zip
		- location: Scripts/UnzipDataBundle.zip
	AfterInstall:
		- location: Scripts/RunResourceTests.sh
			timeout: 180
	ApplicationStart:
		- location: Scripts/RunFunctionalTests.sh
			timeout: 3600
	ValidateService:
		- location: Scripts/MonitorService.sh
			timeout: 3600
			runas: codedeployuser

Opções de implantação

  • Implantação no local(In-place deployment)
  • Implantação azul/verde(Blue/Green)
    • Em instâncias EC2/Servidores locais(On-Premises)
    • Em Lambda ou ECS
    • Por meio do Cloudformation

Configuração de implantação

Existem os seguintes tipos:

  • Canary
  • Linear
  • All-at-once(Tudo de uma vez)

Implantação com ASG

  • Implantação In-place: Atualiza instâncias EC2 existentes
  • Implantação Azul/Verde(Blue/Green) : Um novo Auto-Scaling Group é criado e deve usar um ELB

📚 Referências

Para uma compreensão mais profunda sobre CodeDeploy recomendo a leitura da documentação oficial, os links estão abaixo.



Feito com ♥ by 👨‍🚀 Guilherme Bezerra 👋 Entrar em contato!