Curso CI/CD Implementing a CI/CD Pipeline
24 horasVisão Geral
Este Curso CI/CD Implementing a CI/CD Pipeline, de ferramentas técnicas usando Github, Ansible e Jenkins, dando aos membros da equipe DevOps a capacidade de automatizar todo um pipeline de CI/CD de ponta a ponta.
Construir, testar e implantar código pode ser complexo e demorado. Esta aula técnica prática e conduzida por instrutor de três dias fornece a solução de como criar um pipeline de CI/CD automatizado que cria, testa e implanta código toda vez que um desenvolvedor envia uma alteração de código, garantindo apenas alta qualidade e o código aprovado é implantado.
Os desenvolvedores não usam ferramentas de software isoladas, então por que aprender ferramentas isoladamente? Este curso combina as tecnologias corporativas mais usadas em pipelines únicos, integrados e completos. Ensinaremos o git desde o início para que você possa enviar código com segurança para um repositório remoto, como Github ou Bitbucket. Em seguida, ensinaremos como configurar servidores usando o Ansible a partir do código armazenado no git. Em seguida, integraremos git e Ansible com Jenkins CI/CD para criar, testar e implantar seu código em ambientes de preparação e produção, criando um pipeline de DevOps automatizado de ponta a ponta.
Objetivo
Após realizar este Curso CI/CD Implementing a CI/CD Pipeline, você será capaz de:
- Manter código usando Git e GitHub
- Crie, teste e implante playbooks Ansible por meio de um pipeline de CI/CD do Jenkins
- Testes de integração completos
- Escreva CI/CD como código usando Jenkins
- Compile, teste, empacote e armazene permanentemente aplicativos Java
- Armazenar artefatos
Publico Alvo
- Engenheiros DevOps
- Operações do sistema
- Desenvolvedores de código
- Desenvolvedores de software
- Profissionais de garantia de qualidade
- Testadores de software
- Proprietários do produto
- Engenheiros de infraestrutura
- Membros da Equipe de Desenvolvimento
- Membros da Equipe de Operações
- Gerentes de projeto
- Gerentes Técnicos de Produtos
Pre-Requisitos
- Entenda a finalidade dos servidores de infraestrutura
- Familiarizado com scripts de qualquer tipo
- Experiência trabalhando na linha de comando do Unix, Linux ou PowerShell
- Experiência com um editor de texto de qualquer tipo
Materiais
Português/Inglês + Exercícios + Lab PraticoConteúdo Programatico
Technology Overview
- Git – Source Control Management
- Chef – Configuration Management
- Jenkins – Continuous Integration/Continuous Deployment
Git – Source Control Management
- Purpose overview and use cases
- Git workflow
- Configuring git on your local machine
- Getting help with Git
- Local vs. Global vs. System configurations
- Basic Git Commands
- Creating local git repositories
- Branching and merging
- Using remote repositories
- Pushing code to Github using public and private SSH keys
Ansible – Configuration Management
- Ansible purpose and use cases
- Architecture and call flow
- Ansible installation, configuration, and validation
- Control nodes and managed nodes
- Ansible managed hosts
- Host inventory; hosts and groups
- Repeatable code: Playbooks
- Introduction to YAML
- Modularizing code: Roles
- Ansible variables
- Dynamic configuration with facts
- Finding errors: Ansible unit testing
- Ensuring code quality: Ansible integration testing
Jenkins – Continuous Integration / Continuous Deployment
- CI/CD overview, use cases and history
- Plugin architecture
- Initializing a Jenkins server
- Projects and jobs
- Freestyle jobs
- CI/CD as Code: Pipeline projects
- Declarative vs. scripted pipelines
- Jenkins Environment variables and parameters
- Distributed architecture: Master and agent nodes
- Views and Folders
- Managing credentials and secrets
- Integrating with git Source Control Management
- Triggers: Webhooks and Polling
- Notifications: Instant messaging and SMTP Email
- Approval inputs
- Testing Ansible playbooks in Jenkins
- Multibranch Pipelines: Reading entire repositories
- Conditional Logic
- Deploying Chef cookbooks with Jenkins: An automated end-to-end deployment pipeline