Este documento apresenta as práticas de CI (integração contínua) e CD (entrega contínua) usando ferramentas como Visual Studio, Visual Studio Team Services e Microsoft Azure. A palestrante fará três demonstrações mostrando como criar e versionar uma aplicação .NET Core, aplicar CI e CD com VSTS e publicar a aplicação no Azure.
2. Apresentação
■ Jaqueline Ramos
■ Há aproximadamente 7 anos emTI
– Monitoração, desenvolvimento e Infraestrutura
■ Atualmente Consultora DevOps na ESX (www.esx.com.br)
■ Evangelista na WoMakersCode
■ MCP | MSAzure
■ MVP Microsoft
3. Agenda
■ Ferramentas de colaboração
– Sobre quais falaremos hoje?
■ Demo 1: Criando minha primeira aplicação &Versionamento
■ Continuous integration (CI)
■ Continuous deployment & Continuous delivery (CD)
■ Demo 2: aplicando as práticas de CI & CD comVSTS
■ Demo 3: publicando noAzure + Slots
6. Continuous integration (CI)
■ Continuous integration é uma prática de desenvolvimento de software em que os
membros de uma equipe integram seu trabalho com frequência.
■ Geralmente cada pessoa realiza esta integração pelo menos diariamente - levando a
várias integrações por dia.
8. Continuous integration (CI)
■ Para que o CI funcione:
– Build automatizado
– Inclua testes em seu processo de build
– Se comprometa com a análise e possível correção em caso de falha no build
– Não acumule builds com erros
– Mantenha seu processo de build rápido
– Ambiente de destino sempre atualizado (não pule builds a serem aplicadas)
– HabiliteCD (Continuous deployment)
9. Continuous deployment (CD)
■ Continuous deployment significa que todas as alterações passam pelo pipeline e são
automaticamente colocadas em produção.
■ Resultando em muitas implantações de produção todos os dias.
10. Continuous delivery (CD)
■ Continuous delivery é uma disciplina de desenvolvimento de software na qual você
cria software de maneira que possa ser liberado para produção a qualquer momento.
11. Continuous delivery (CD)
■ Para utilização desta prática, você precisa:
– Relacionamento colaborativo entre os times envolvidos (DevOps)
– Automação de seu processo de entrega