Conteúdo Programatico
Overview of DevOps Practices
Learning Objective
- Get introduced to successful DevOps practices and understand how to navigate the DevOps environment.
Topics
- Introduction of DevOps practices
- What is DevOps?
- Vision and phase-wise implementation
- Continuous code inspection
- Continuous integration
- Continuous delivery and continuous deployment
- Infrastructure as code
- Pipeline example
Overview of Jenkins
Learning Objective
- Understand how Jenkins works and where it is useful.
Topics
- Introduction of Jenkins
- What is Jenkins?
- Why Jenkins?
- Jenkins projects
- Jenkins tour
Install and Configure Jenkins
Learning Objective
- Learn how to install and configure Jenkins
Topics
- Introduction to installation and configuration of Jenkins
- Install and configure Jenkins
- Introduction to Docker Desktop
- Download Docker desktop
- Install Docker desktop
- Execute Docker commands
- Jenkins network and volume configuration for docker
- un Jenkins in Docker container
- Install WAR file in any operating system
- Jenkins configuration
- System configuration for Jenkins
- Jenkins plugins
- Introduction to plugins
- Manage plugins
- Global Tools Configuration
- Create a simple Maven project
- Credential management
- Jenkins home directory
Overview of SonarQube
Learning Objective
- Gain an understanding of SonarQube and its benefits
Topics
- Introduction of SonarQube
- Why SonarQube?
- What is SonarQube?
- Install and configure SonarQube
- SonarQube plans
- How does SonarQube work?
- Install and configure SonarQube
- SonarQube –Rules
- SonarQube –Sonar tokens
- SonarQube –Users
- SonarQube –Groups
- SonarQube using Docker
- SonarQube in different OS
- Quality gate
- Quality gate introduction
- Quality gate
- Quality profiles
- Quality profile introduction
- Quality profile
- SonarQube scanner
- SonarQube scanner introduction
- SonarQube scanner
Pipeline as a Code
Learning Objective
- Get an understanding of how Pipeline as a code works
Topics
- Introduction of pipeline as a code
- What is pipeline as a code
- Jenkins 2.0
Jenkins Pipelines
Learning Objective
- Understand Jenkins pipeline and how to build them
Topics
- Build pipeline plugin
- Build pipeline in Jenkins
- Jenkinsfile introduction
- Scripted Pipeline
- Declarative Pipeline
- Declarative Pipeline introduction
- Declarative Pipeline
- Scripted Pipeline vs Declarative Pipeline
- Blue Ocean
- YAML pipeline
- Create YAML pipeline
- Pipeline syntax: Snippet Generator
Multi-branch Pipeline
Learning Objective
- Learn about multi-branch pipelines and branching models
Topics
- Introduction of multi-branch pipeline
- Branching models and multibranch pipeline
- Multi-branch pipeline in Jenkins
Distributed Architecture
Learning Objective
- Understand how to work with Jenkins in a distributed architecture.
Topics
- Introduction of distributed architecture
- Jenkins distributed architecture
- Controller and agent in Jenkins
- Agent labels
- Tools location in Jenkins agent
- Different agents for different stages
- Execute pipeline on Docker agent
- Agent pool
Authentication and Authorization in Jenkins
Learning Objective
- Get an understanding of the security measures you can implement with Jenkins
Topics
- Introduction of authentication and authorization
- Enabling security in Jenkins
- Authentication in Jenkins
- Authorization in Jenkins
- Project-based authorization
- Security advisories in Jenkins
Capstone
Learning Objective
- For the final capstone project, you will create pipeline as code to implement continuous integration and continuous delivery for a SpringBoot project.