/apostila-devops

Apostila do curso de DevOps

Primary LanguageTSQLOtherNOASSERTION

Apostila do curso de DevOps da Caelum

Ementa:

Sobre o Curso

  1. DevOps
  2. O curso
  3. Código fonte
  4. Bibliografia complementar

DevOps

  1. O que é DevOps?
  2. A história do desenvolvimento de software
  3. A história do DevOps
  4. DevOps Anti-Patterns
  5. A cultura em um ambiente DevOps
  6. CALMS
  7. Mudanças culturais para adotar DevOps
  8. The Three Ways
  9. O papel das ferramentas em um ambiente DevOps

Lean

  1. O que é Lean
  2. Exercício: Lean Lego Game
  3. Sobre Lean: o método Toyota
  4. Push vs. Pull Systems
  5. Kanban
  6. Systems Thinking
  7. Work Cells
  8. Kaizen
  9. Lean e DevOps

O projeto do curso

  1. Alura Fórum: o fórum da plataforma Alura
  2. As funcionalidades da aplicação
  3. Como rodar a aplicação?
  4. Código fonte do projeto
  5. Exercício: download do código fonte da aplicação
  6. Build do projeto
  7. Exercício: build manual da aplicação
  8. Deploy do projeto
  9. Exercício: deploy manual da aplicação

Build automatizado

  1. Build
  2. Os problemas do build manual
  3. Automatização do processo de build
  4. Build tools
  5. Automatizando o build do fórum da Alura
  6. Exercício: Adicionando o Maven ao projeto
  7. Exercício: Isolando os datasources com profiles
  8. Realizando o build automatizado com Maven
  9. Exercício: Gerando o build automatizado do projeto

Controle de Versão

  1. Backup e colaboração
  2. Sistemas de Controle de Versão
  3. Git
  4. Utilizando o Git
  5. Exercício: Utilizando o Git na aplicação
  6. Mais detalhes do Git
  7. Hospedando o repositório no GitLab
  8. Exercício(opcional): Criando uma conta no GitLab
  9. Exercício: Criando um repositório no GitLab
  10. Sincronizando o repositório local com o GitLab
  11. Exercício: Enviando os commits para o repositório remoto
  12. Clonando um repositório já existente
  13. Exercício: Renomeando o repositório remoto
  14. E quanto ao time de Ops?

Testes Automatizados

  1. O processo de desenvolvimento de um software
  2. Funcionalidades e bugs
  3. Testes manuais e seus problemas
  4. Testes automatizados
  5. Exercício: Configurando o projeto para os testes automatizados
  6. Exercício: Escrevendo testes automatizados na aplicação
  7. Tipos de testes automatizados
  8. Exercício: Testes automatizados com Mockito
  9. Para saber mais: Pirâmide de Testes
  10. Para saber mais: TDD (Test Driven Development)
  11. Para saber mais: Refactoring
  12. Cobertura de testes
  13. Exercício: Code Coverage com JaCoCo
  14. Métrica: Change Failure Rate

Integração Contínua

  1. Trabalhando em time
  2. Integration hell
  3. Integração Contínua
  4. Princípios da integração contínua
  5. Jenkins
  6. Exercício: Instalação do Jenkins
  7. Integração contínua com Jenkins
  8. Exercício: Utilizando o Jenkins como servidor de integração contínua
  9. Plugins do Jenkins
  10. Exercício: Utilizando plugins do Jenkins
  11. Branches
  12. Feature-Branch vs. Trunk-Based

Entrega Contínua

  1. O trauma do deploy
  2. Janela de deploy
  3. Continuous Delivery
  4. Os pilares da Continuous Delivery
  5. Deployment Pipeline
  6. Os problemas do deploy manual
  7. Automatizando o deploy
  8. Vagrant
  9. Exercício: Automatizando a infra da aplicação com Vagrant
  10. One-Click deploy
  11. Exercício: One-click deployment com Jenkins
  12. Immutable Infrastructure
  13. Zero Downtime Deployment
  14. Blue-Green Deployment
  15. Canary Release
  16. Métrica: Lead Time
  17. Métrica: Deployment Frequency
  18. O valor das métricas
  19. Accelerate: State of DevOps Report

Deploy Contínuo

  1. Continuous Deployment
  2. Vantagens e desvantagens do continuous deployment
  3. Feature Toggle
  4. Exercício: Continuous Deployment com Jenkins

Monitoramento

  1. O problema: Sistema fora do ar
  2. A má prática: Apagar incêndios
  3. A solução: Monitoramento Contínuo
  4. Ferramentas de monitoramento
  5. O que devemos monitorar?
  6. Monitoramento de negócios
  7. Exercício: Monitoramento com Glowroot
  8. Métrica: Mean Time To Recover

Para mais informações sobre o curso, acesse: https://www.caelum.com.br/curso-devops

Licença

Este obra está licenciado com uma Licença Creative Commons Atribuição-NãoComercial-SemDerivações 4.0 Internacional.