Introduction and Basics
- Course Introduction
- Problem Statement Meeting with Dasher Team
- Introduction to Jenkins
- Basics of SCM
- SCM Terminology
- Basics of CICD
- Software Testing
Jenkins Setup and Interface
- Jenkins Architecture
- Jenkins Installation Options
- Demo Jenkins Installation
- Demo Initial Settings and JVM Tuning
- Demo Running the Jenkins WAR as a standalone application
- Demo Jenkins User Interface Overview
- Demo System Settings
- Demo Build Timeout
- Demo Timestamp
- Types of Jenkins Projects
- Demo Working with Freestyle Job
- Demo Chained Freestyle Projects
Extending Jenkins and Administration
- Jenkins Plugins
- Demo Installing Plugins
- Demo Managing Plugins
- Demo Manage Old Data
- Demo Reload Configuration from Disk
- Demo Controller Failure Freestyle Project
- Demo Jenkins Fingerprints
Jenkins Pipelines
- Pipeline and Jenkinsfile
- Additional Pipeline Configuration
- Demo Simple Pipeline Job
- Demo Build and Test via Pipeline
- Demo Pipeline Script from SCM
- Demo Controller Failure Pipeline Project
- Demo Create Pipeline using Blue Ocean Graphical Editor
- Demo Create Pipeline with Parameters
Automation and Security
- Automating Jenkins using CLI and APIs
- Demo Jenkins CLI Build a job
- Demo Jenkins REST API install a plugin
- Demo Jenkins CSRF CRUMB
- Jenkins Security Overview
- Demo Jenkins Authentication
- Demo Authorization Matrix Authorization Strategy
- Demo Jenkins CLI SSH Authentication
- Demo Jenkins CLI Edit a Freestyle Job
- Demo Built in Email Notification
- Demo Email Extension Notification Freestyle
- Demo Email Extension Notification Pipeline
Setting up CI Pipeline
- NodeJS Application Overview
- Demo Run and Test NodeJS App on Local Machine
- Understanding DevOps Pipeline
- Demo InstallSetup NodeJS Build Tool
- Demo Create Organization Folder Project
- Demo Add Jenkinsfile to Solar System Repo
- Demo Install Dependencies
- Demo Setup and Run Dependency Scanning
- Demo Fixing Vulnerabilities Publish HTML Report
- Demo Unit Testing and Analyze JUnit Reports
- Demo Using Options Directive
Code Quality and Testing
- Demo Code Coverage and Catch Errors
- Demo Refactoring Jenkinsfile
- Demo String Interpolation
- SonarQube Intro
- Demo SAST Analysis
- Demo SonarQube Quality Gate Step and Refactoring
Containerization and Deployment
- Demo Build Docker Image
- Demo Vulnerability Scan using Trivy
- Demo Push to Registry
- Understanding Deployment Approach
- Demo Exploring AWS and Setting up Jenkins Instance
- Built in when conditions
- Demo Deploy AWS EC2
- Demo Integration Testing AWS EC2 Instance
Kubernetes and GitOps
- Brief Overview on Kubernetes
- Introduction to GitOps
- ArgoCD Concepts Terminology
- CICD with GitOps
- Demo Manifest Repository and Configure ArgoCD
- Demo Kubernetes Deploy Update Image Tag
- Demo Kubernetes Deploy Raise PR
- Demo DAST and Manual Input
- Demo DAST Ignore Rules
- Demo Publish Reports to AWS S3
- Demo Deploy to Prod
AWS Lambda and Advanced Deployment Techniques
- AWS Lambda Basics
- Demo Using GenAI to Generate Steps for Lambda Deployment
- Demo Manual Lambda Deployment
- Demo Lambda Deployment using Jenkinsfile
- Demo Update Lambda Configuration
- Demo Lambda Invoke Function
Jenkins Administration and Monitoring - Part 1
- Demo Jenkins Folder Part 1
- Demo Jenkins Folder Part 2
- Demo Jenkins Folder Part 3
- Demo Jenkins Folder Part 4
- Demo Script Console
- Global Security Settings
- Demo Markup Formatters
- Demo Access Control for Builds
- Demo Job Restrictions
- Demo Job Configuration History Plugin
- Demo Build Monitor View
- Jenkins Scaling Capacity Planning
- Demo Monitoring using Java Melody
- Demo Slack Notification Setup
- Demo Send Slack Notification
Shared Libraries in Jenkins
- Introduction to Shared Libraries
- Demo Refactor existing Jenkinsfile
- Demo Create a Shared Library for Slack Notification
- Demo Configure Shared Library in Jenkins
- Demo Loading the Shared Library in Pipeline
- Demo Create Shared Library for Trivy Scan
- Demo Load TrivyScan Library in Jenkins Pipeline
- Demo WhatWhyCreate LibraryResource
- Demo Load TrivyScanScript Library in Jenkins Pipeline
Agents and Nodes in Jenkins
- Types of Agents
- Demo Create and Configure Node
- Demo Utilize Agents in Jobs
- Demo Utilize Docker Image Agent
- Demo Utilize Dockerfile Agent
- Demo Utilize newContainerPerStage
- Demo Configure cloud instances Kubernetes
- Demo Utilize Kubernetes Pod as Agent
Pipeline Enhancement and Caching
- Demo Sharing a file between containers
- Demo Refactoring Solar System Pipeline
- Demo Refactoring Unit Test Stage
- Demo Sequential stages
- Demo Stash and Unstash
- Demo Pipeline Caching
- Demo Invalidate Cache
Pipeline Structure and Scripted vs Declarative
- Declarative vs Scripted Pipeline
- Demo Declarative vs Scripted Pipeline
- Demo Preversing Stash in Declarative Pipeline
- Demo Scripted Pipeline Initialize
- Demo Scripted Pipeline Static Agent
- Demo Scripted Pipeline K8S Agent
- Best Practices for Scripted Pipelines
Jenkins Administration and Monitoring - Part 2
- Jenkins Supervision
- Demo Monitoring with Prometheus Grafana
- Demo Log Recorder
- Demo Install and Configure Audit Trail
- Demo Forward Audit logs to External Server
- Groovy Sandbox and In process Script Approval
- DemoGroovy Sandbox and In process Script Approval Part 1
- Demo Groovy Sandbox and In process Script Approval Part 2
- Demo Groovy Sandbox and In process Script Approval Part 3
- Demo Migrating Jenkins to Another Node
Backup and Configuration Management
- Github Actions Basics
- Demo Migrating Jenkins Pipeline to GitHub Action
- Backing upRestoring Jenkins
- Demo Backing upRestoring Jenkins
- Demo Validating Backup
- Demo Upgrading Jenkins
- Jenkins Configuration as Code JCasC
- Demo Configure and Explore JCasC
- Demo Use JCasC to Create Jobs
- DemoPipeline Durability