Continuous Deployment
-
Upload
welington-oliveira-da-silva -
Category
Technology
-
view
123 -
download
0
Transcript of Continuous Deployment
Continuous Deployment• O que é?
“É a capacidade de entregar valor para seu cliente o mais rápido e frequente possível”
• É uma evolução do Continuous Integration e do Continuous Delivery• Vamos todos publicar em produção todo dia e toda a hora?
Metodologia Ágil
• Foco nos indivíduos e interações e não no processo•Maior retorno de valor•Ciclos iterativos e incrementais
Valor para o cliente é igual a software em PRODUÇÃO
Primeiro, Integração ContínuaÉ a prática de minimizar o tempo e o esforço necessário para
integrar o código fonte de todos os integrantes da equipe
• Repositório Integrado• Validação constante no repositório• Builds Automatizados• Monitoramento e Feedback
E a Qualidade?
• Testes, Testes e mais Testes• Automatização de Testes• Integração e Validação• Testes Unitários ou Aceitação
Benefícios
Para o cliente o que vale é o SOFTWARE EM PRODUÇÃO
• Redução do Risco e da complexidade da entrega
• Definição de pronto é realmente pronto,ou seja, ENTREGUE
• Feedback do usuário o mais rápido possível
Principais Desafios
• Mudanças estruturais (Banco de Dados)
• Garantir a Qualidade e Evitar Erros
• Manter a Agilidade do Processo de Deploy
• Impedir Sistema Inoperante
Adequar a Realidade
• Necessidades da área de negócio
• Impacto estratégico
• Inovação
• Reação Rápida
• Resposta a mudanças
Visual Studio ALM
Controle de Versão
Integração Contínua
Testes Automatizados
Team Build
Release Management
Team Foundation Build 2015• A ferramenta foi totalmente remodelada• Os templates em Workflow Foundation não são mais
utilizados• Os Build Agents não necessitam mais de um ambiente
Windows• Adicione passos(steps) a sua definição de Build• Crie seus próprios steps customizados• Execute e configure os testes facilmente• Continuous Deployment pra nuvem
Cross-Plataform• Os Build Agents podem executar em qualquer ambiente• Windows• Linux• Mac
• Build de qualquer plataforma executando em qualquer plataforma• Node.js App (Agent)
Release Management
• Automatização dos Deploys• Padronização do Processo para Ambiente Diferentes• Controle do Processo de Workflow de Aprovação
Release Management
Controla, gerencia e executa as releases
Conecta ao RM Server para administração das releases
Servidor que faz parte do ambiente das Releases