From Zero To Master - Industrial CICD Projects

From Zero To Master – Industrial CI/CD Projects

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

Leave a Reply