pessoal agora quem já falou um pouco de cold pipeline lá a gente abordou um pouquinho do cold build tá então a gente acabou falando um pouquinho do cold build mas a gente não aprofundou nele então vou dar uma passada com vocês cold build é super rápido a gente não entende a demorar muito aqui é só pra vocês terem uma idéia do que é e como funciona bom basicamente é um serviço de compilação como qualquer serviço de compilação mas ele é g serviço de compilação, mas ele é gerenciado pela Amazon, pela AWS, e ele vai deixar com que você faça tanto a compilação quanto o teste do código-fonte que você tem para colocar de forma automática, e ali ele vai ser como tudo que a gente falou da AWS, altamente escalável, eficiente, suporta uma porrada de plataformas, e programação, e frameworks também. Então aqui você vai ver que você tem uma ampla gama de coisas para usar o CodeBuild. Mas ele não deixa de ser um serviço aqui de build e de aplicação, tá bom? É basicamente para isso. Como é que ele funciona? O core dele, o cara principal dele é esse BuildSpecYaml. É aqui que você vai definir tudo que vai ser feito, então quando a gente está falando do build-spec.yml como está falando aqui, ele é o coração da configuração do code build, ele é um arquivo .yml e ele vai ser nele que você vai colocar todo o processo que vai ser executado, tá bom? esse arquivo aqui vai ser colocado na raiz repositória do seu código fonte e ele vai fazer fazer todo o passo a passo a receita de execução do build dessa aplicação como é que a estrutura dele você vem com a versão tá é na versão normalmente ela tem esse formato aqui 0.2 depois você tem as fases cada fase ela tem um agrupamento dos processos de build por exemplo tem a fase de instalação a fase de pre-build a fase de build a fase de pós-build então você consegue quebrar isso em algumas fases e os comandos que não são nada mais do que o que você quer que seja feito dentro de cada fase ali você vai realmente especificar o que você quer que seja executado no build da sua aplicação tá bom então aqui é o passo a passo para compilar o seu código ou executar os scripts que você precisa no seu CodeBuild. A estrutura dele aqui também tem um outro pedaço que são os artefatos, que vai ser quais são os arquivos de saída que vão ser gerados e armazenados. E aqui é importante você deixar isso bem organizado também. E você tem o cache o cache é uma estrutura interessante de uso que você consegue colocar ali dependências ou armazenar alguma coisa de reutilização pra você acelerar os processos de build então às vezes tem processos muito lento assim por diante consegue usar uma estratégia de cache no processo de build para deixar isso mais rápido dependendo do tamanho das coisas que você faz número de pessoas usando assim por diante então tem isso também que é interessante aqui eu coloquei bem rapidinho uma idéia de como ficaria é um e é meu ali um misturo de birdspeck pra gente entender mais visualmente tá bom mas bem simples uma coisa bem simples até aqui a versão 0.2 aí você entra nas fases que eu comentei você tem a primeira fase aqui que é de instalação então as fases ali, ela tem todos os estágios do build, cada um com um conjunto de comandos, como a gente falou, você tem o install dela, quando você entra na fase de install, você vai ter as configurações do ambiente como baixar dependência variável de ambiente assim por diante e aqui começa os comandos da fase de instalação quando está falando desses comandos eu dei primeiro aqui um eixo pra gente começar a ter um é um log de quando o de como foi a instalação das dependências dela assim por diante a gente conseguir enxergar o que está acontecendo depois você tem um npn tal que vai realmente fazer ali é toda a instalação de dependências assim por diante está bom que vem no seu pé que diz um por um por exemplo está depois de uma fase de build na fase de build você vai ter ali é os comandos desse vídeo também aqui eu coloquei um primeiro comando, que é um para a gente colocar o age aqui de a hora e data de start da coisa, de quando foi feito esse build. E depois você vem realmente para o npm, para o run para fazer esse build executar. E ele vai fazer todos os passos que tem aqui do run. E depois você tem aqui a parte dos artefatos, que você define quais são os arquivos eu coloquei aqui no nosso caso arquivo de saída um ponto jar um app.jar que vai ser o nosso arquivo de saída no nosso caso e basicamente é essa estrutura então você vê aqui você tem os agrupamentos né dentro da sas você tem os agrupamentos do que deve ser feito e os comandos de execução é basicamente isso, bem simples. É uma forma da gente ver visual tudo que a gente falou aqui anteriormente. Beleza? Agora vamos em frente. Os ambientes de compilação, você tem os ambientes que são pré-configurados, ou seja, o AWS CodeBuild já tem ambientes de compilação que já são pré-configurados e gerenciados ali pelo AWS, já eram prontos. Basicamente é o Play Vanilla que a gente fala, ele já vem com os frameworks mais populares, como Java, Python, tem todos, acho que tem todos que a gente conhece que são mais populares, tá bom? E isso vai simplificar ali a sua configuração, pois você pode selecionar o ambiente que já esteja configurado e usar as ferramentas dele ali, versões, etc que tem pra sua aplicação tem pra tudo quanto é coisa, acho que talvez não tenha pra COBOL ou Clipper brincadeira, mas a maior parte das linguagens tem Java, Python, Node.js Ruby, Go, .NET Core, sei lá mais o que a gente pensar aqui, deve ter também de aplicações, Next.js, várias coisas que a gente consegue usar também a gente tem os ambientes customizados, então para caso de uma configuração que você não seja tão padrão, você consegue usar os ambientes customizados para te ajudar aqui e você fazer o seu ambiente próprio ali, só que vai dar mais trabalho porque você vai ter que subir num docker ou no container ali o seu ambiente de build, beleza?