Description
Jenkins is a powerful and flexible automation tool; It is used to automate almost anything.
Go faster and learn how to build strong automated processes like Pipelines, CI/CD workflow, and more!
In the DevOps world, Jenkins is one of the best cards on the table.
Start automating everything, and become a DevOps engineer!
This is the right course for you!
Course Content:
Introduction
- About Jenkins tool
- Installation of Oracle VM VirtualBox Manager
- Installation of Ubuntu Operating System.
- Installation of Jenkins
- Overview of Jenkins Dashboard
About Jenkins
- Create First Job in Jenkins
- Job – Default User & Workspace Location
- Status, Weather & Build Stability of a Job
- Search Panel in Jenkins Dashboard
- Manage Jenkins – Configure System
- Manage Plugins – Install a simple theme plugin
User Accounts In Jenkins
- Create User Accounts in Jenkins
- Role-Based Authorization Strategy in Jenkins
- Configure Authorization from Global Security
- Delegate Permission Using Manage Roles -1
- Delegate Permission Using Manage Roles -2
Integrate GitHub Repository to Your Jenkins Project
- Clone the git project using terminal
- Clone the git project using Jenkins Shell
- Delete workspace before build starts
Build Triggers
- Build Triggers – Trigger builds remotely (e.g., from scripts)
- Trigger builds remotely using an Authentication token
- Build Triggers from terminal
- Build after other projects are built
- Trigger even if the build fails/unstable/aborted
- Build Periodically
- Poll SCM – Source Code Management
Variables in Jenkins
- Environment Varaibles
- Global Environment Varaibles
Build Environment in Jenkins
- Parameterized Jobs in Jenkins
- String Parameter
- Boolean Parameter
- Choice Parameter
- Multi-line String Parameter
- Password Parameter
- File Parameter
- Set Timeout in Jenkins
- Add timestamps to the console output
- Enable/Disable Jenkins Job
- Execute Concurrent, Parallel Build Jobs in Jenkins
- Retry count in Jenkins
- Throttle builds in Jenkins
- Custom Workspace
- Change the Display Name of a Job in Jenkins
- Block Build when Upstream/Downstream project is building
Build Pipeline
- Create Jenkins Pipeline Using Build Pipeline
- Overview of the CICD Process
- Continuous Delivery vs Continuous deployment with a practical approach
- Parallel Jobs in Jenkins Pipeline
Deploy Build Artifacts to Tomcat Server
- Deploy Build Artifacts (.war) to Tomcat Server
- Configure the Tomcat Server
- Deploy Build Artifacts (.war) to Tomcat Server – GUI
Deploy the package (war file) to Tomcat Server using Jenkins
- Overview of project
- Clone the code from Git Repository
- Integrate Maven with Jenkins
- Build the Package using Maven Tool
- Install & Configure Tomcat Server
- Configure a Pipeline using Build Pipeline
- Deploy the Package file (.war) to Tomcat Server
- Last Lecture
Jenkins Pipeline – Declarative Pipeline
- Create the first Pipeline as code – Create the first Jenkinsfile
- Multiple stages in pipeline script
- Run commands using pipeline script
- Variable/Environment in pipeline script
- Define stage-level variables using pipeline script
- Build parameters in the pipeline script
- Boolean & choice parameters in pipeline script
- Input from the user in the pipeline script
- Post actions in the pipeline script
- Last lecture
CICD Process – Manual Approach Using Maven, SonarQube, Docker, AWS ECR
- Overview of CICD Process
- Configure Build Server and Install various tools like Java, Git, Maven, Docker
- Checkout & Build the Project using Maven Tool
- Install SonarQube on Ubuntu Instance
- Add Sonar-maven-plugin
- Start SonarQube Service
- Check the Code Quality
- Overview of Dockerfile to Create a Docker Image
- Create a Repository in AWS ECR
- Create a Role to Provide Access One AWS Service (CI Server) to another (AWS ECR)
- Build the Docker Image using Dockerfile
- Push the Docker Image to AWS ECR Repository
- Create a CD Server – Continuous Deployment
- Pull & Execute the Docker Image from ECR to CD Server
- Recap the Entire CICD Process
CICD Process Using Jenkins
- Overview of CICD Process using Jenkins
- Install a Jenkins Server (CI Server)
- Add maven in Jenkins Server from Global Tool Configuration
- Create a Jenkins pipeline for Checkout & build the project
- Install SonarQube Server using Docker container
- Generate the token from SonarQube Server
- Add Sonar Login Credentials on Jenkins Server
- Install SonarQube Scanner plugins on Jenkins
- Add SonarQube on Jenkins Server
- Pipeline for SonarQube Scanner for Jenkins
- Pipeline for success or aborted due to quality gate failure
- Configure a webhook in your SonarQube Server
- Add stage in pipeline to create a Docker Image using DockerFile
- Create an IAM User to have access to AWS ECR and add it to Jenkins Server
- Add stage in pipeline to Push the Docker Image to AWS ECR
- Configure SES to send an email notification
- Integrate SES with Jenkins using pipeline
- Receive an Email Notification after the success or failure of Jenkins Pipeline
- Last lecture