# KodeKloud: Beta Courses Jenkins Pipelines

## Jenkins Pipelines

### Setting Up CI Pipeline

- [Understanding XYZ Team DevOps Pipeline Requirement](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Understanding-XYZ-Team-DevOps-Pipeline-Requirement/page.md): This guide explores the comprehensive DevOps pipeline designed for the XYZ Team, integrating CI, CD, delivery, and post-build processes for robust software development.
- [InstallSetup NodeJS Build Tool](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/InstallSetup-NodeJS-Build-Tool/page.md): This lesson covers setting up and using Node.js within Jenkins, including verification and configuration of a dedicated Node.js installation.
- [Create Organization Folder Project](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Create-Organization-Folder-Project/page.md): Learn to use Jenkins Organization Folder project type for efficient project management and automation with GitHub repositories.
- [Add Jenkinsfile to Solar System Repo](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Add-Jenkinsfile-to-Solar-System-Repo/page.md): This guide explains how to add a Jenkinsfile to the Solar System repository for enabling CI/CD automation.
- [Install Dependencies](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Install-Dependencies/page.md): This article demonstrates adding a stage in a Jenkins pipeline to install Node.js dependencies efficiently.
- [Setup and Run Dependency Scanning](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Setup-and-Run-Dependency-Scanning/page.md): This guide explains integrating dependency scanning in Jenkins pipelines using npm audit and OWASP Dependency-Check to detect vulnerable dependencies in Node.js projects.
- [Fixing Vulnerabilities Publish HTML Report](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Fixing-Vulnerabilities-Publish-HTML-Report/page.md): This guide explains fixing vulnerabilities and publishing HTML reports in Jenkins to maintain a secure CI/CD pipeline.
- [Unit Testing and Analyze JUnit Reports](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Unit-Testing-and-Analyze-JUnit-Reports/page.md): This article explains how to configure a Jenkins pipeline for unit testing and analyzing JUnit reports.
- [Using Options Directive](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Setting-Up-CI-Pipeline/Using-Options-Directive/page.md): This article explains how to use the options directive in Jenkins pipelines to configure behaviors for optimizing continuous integration workflows.

### Code Quality and Testing

- [Code Coverage and Catch Errors](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Code-Quality-and-Testing/Code-Coverage-and-Catch-Errors/page.md): This tutorial demonstrates adding a Jenkins pipeline stage for code coverage while handling errors gracefully.
- [Refactoring Jenkinsfile](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Code-Quality-and-Testing/Refactoring-Jenkinsfile/page.md): This article discusses refactoring a Jenkinsfile to enhance credential management and streamline the pipeline structure.
- [SonarQube Intro](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Code-Quality-and-Testing/SonarQube-Intro/page.md): This article explores Static Application Security Testing using SonarQube to identify security vulnerabilities and ensure code quality through automated reviews and quality gates.
- [SAST Analysis](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Code-Quality-and-Testing/SAST-Analysis/page.md): This article covers performing Static Application Security Testing using SonarQube, including project setup, integration with Jenkins, and handling code coverage reports.
- [SonarQube Quality Gate Step and Refactoring](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Code-Quality-and-Testing/SonarQube-Quality-Gate-Step-and-Refactoring/page.md): This article explains configuring a SonarQube quality gate in Jenkins pipelines and refactoring for improved security and clarity.

### Containerization and Deployment

- [Build Docker Image](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Containerization-and-Deployment/Build-Docker-Image/page.md): This article demonstrates building a Docker image within a Jenkins pipeline using the Docker CLI and environment variables.
- [Vulnerability Scan using Trivy](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Containerization-and-Deployment/Vulnerability-Scan-using-Trivy/page.md): This article explains how to use Trivy for vulnerability scanning of Docker images and Node.js dependencies before pushing to a container registry.
- [Push to Registry](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Containerization-and-Deployment/Push-to-Registry/page.md): This guide explains how to push a Docker image to a container registry using Jenkins after building and scanning the image for vulnerabilities.
- [Understanding Deployment Approach](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Containerization-and-Deployment/Understanding-Deployment-Approach/page.md): This guide details our deployment approach, covering the CI/CD pipeline from integration to production deployments.
- [Exploring AWS and Setting up Jenkins Instance](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Containerization-and-Deployment/Exploring-AWS-and-Setting-up-Jenkins-Instance/page.md): This guide covers deploying a Jenkins instance on AWS, configuring AWS credentials, and integrating various AWS services for a CI/CD pipeline.
- [Deploy AWS EC2](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Containerization-and-Deployment/Deploy-AWS-EC2/page.md): This guide explains how to deploy a Docker application on AWS EC2 using a Jenkins pipeline.
- [Integration Testing AWS EC2](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Containerization-and-Deployment/Integration-Testing-AWS-EC2/page.md): This guide explains how to perform integration testing on AWS EC2 by dynamically retrieving instance details for a flexible Jenkins pipeline.

### Kubernetes and GitOps

- [Brief Overview on Kubernetes](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/Brief-Overview-on-Kubernetes/page.md): This lesson provides an introduction to Kubernetes, the leading open-source container orchestration platform for managing containerized applications.
- [Introduction to GitOps](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/Introduction-to-GitOps/page.md): GitOps is a framework for automating code delivery processes using Git as the single source of truth for infrastructure and application code.
- [CICD with GitOps](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/CICD-with-GitOps/page.md): This article explores CI/CD pipelines with GitOps to streamline application delivery on Kubernetes using separate Git repositories and the ArgoCD operator.
- [Manifest Repository and Configure ArgoCD](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/Manifest-Repository-and-Configure-ArgoCD/page.md): This article explains how to clone a manifest repository and configure Argo CD for deploying the Solar System application.
- [Kubernetes Deploy Update Image Tag](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/Kubernetes-Deploy-Update-Image-Tag/page.md): Learn to update Docker image tags in Kubernetes deployment manifests and integrate changes using a Jenkins pipeline with Argo CD.
- [Kubernetes Deploy Raise PR](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/Kubernetes-Deploy-Raise-PR/page.md): This guide explains automating pull request creation in GitHub using Jenkins and GitHubs REST API.
- [DAST and Manual Input](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/DAST-and-Manual-Input/page.md): This guide demonstrates configuring CI/CD pipeline stages for manual input and Dynamic Application Security Testing using OWASP ZAP.
- [DAST Ignore Rules](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/DAST-Ignore-Rules/page.md): This article explains how to bypass specific warnings during dynamic application security testing with OWASP ZAP in CI/CD pipelines.
- [Publish Reports to AWS S3](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/Publish-Reports-to-AWS-S3/page.md): This guide explains how to upload CI/CD pipeline reports to an Amazon S3 bucket using a Jenkins pipeline.
- [Deploy to Production](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Kubernetes-and-GitOps/Deploy-to-Production/page.md): This article explains how to effectively deploy an application to production using Jenkins, including an admin approval stage for AWS Lambda deployment.

### AWS Lambda and Advanced Deployment Techniques

- [AWS Lambda Basics](https://notes.kodekloud.com/docs/Jenkins-Pipelines/AWS-Lambda-and-Advanced-Deployment-Techniques/AWS-Lambda-Basics/page.md): AWS Lambda is a serverless compute service that allows you to run code without managing servers or infrastructure.
- [Using GenAI to Generate Steps for Lambda Deployment](https://notes.kodekloud.com/docs/Jenkins-Pipelines/AWS-Lambda-and-Advanced-Deployment-Techniques/Using-GenAI-to-Generate-Steps-for-Lambda-Deployment/page.md): This article explains how to adapt a Node.js application for deployment on AWS Lambda using a Jenkins pipeline and GenAI tools.
- [Manual Lambda Deployment](https://notes.kodekloud.com/docs/Jenkins-Pipelines/AWS-Lambda-and-Advanced-Deployment-Techniques/Manual-Lambda-Deployment/page.md): Guide to manually package a Node.js Express app, upload ZIP to S3, and update an existing AWS Lambda function, including handler setup and testing via Function URL.
- [Lambda Deployment using Jenkinsfile](https://notes.kodekloud.com/docs/Jenkins-Pipelines/AWS-Lambda-and-Advanced-Deployment-Techniques/Lambda-Deployment-using-Jenkinsfile/page.md): This article explains automating AWS Lambda function deployment using a Jenkinsfile, detailing configuration, package preparation, and code updates via AWS CLI.
- [Update Lambda Configuration](https://notes.kodekloud.com/docs/Jenkins-Pipelines/AWS-Lambda-and-Advanced-Deployment-Techniques/Update-Lambda-Configuration/page.md): This article explains updating AWS Lambda configuration using a Jenkinsfile, focusing on environment variables via the AWS CLI for streamlined deployment.
- [Lambda Invoke Function](https://notes.kodekloud.com/docs/Jenkins-Pipelines/AWS-Lambda-and-Advanced-Deployment-Techniques/Lambda-Invoke-Function/page.md): This article demonstrates adding a Jenkins stage to test an AWS Lambda function by retrieving its URL and confirming the endpoints response.

### Jenkins Administration and Monitoring

- [Global Security Settings](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Global-Security-Settings/page.md): This article explores Jenkins global security settings, focusing on protecting instances and when adjustments may be necessary for specific tasks.
- [Markup Formatters](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Markup-Formatters/page.md): Learn about the Jenkins Markup Formatter, a feature that enhances formatting and security against XSS attacks in various Jenkins components.
- [Job Restrictions](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Job-Restrictions/page.md): This article explores the Jenkins Job Restrictions plugin for enhancing security and controlling job execution through specific criteria.
- [Job configuration History Plugin](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Job-configuration-History-Plugin/page.md): Learn to use the Job Configuration History plugin for Jenkins to back up, compare, and restore job configurations effectively.
- [Build Monitor View](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Build-Monitor-View/page.md): This lesson explores the Build Monitor View plugin for Jenkins, providing a clear view of job status and progress with automatic updates.
- [Jenkins Scaling Capacity Planning](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Jenkins-Scaling-Capacity-Planning/page.md): This article discusses scaling Jenkins through horizontal and vertical approaches, offering best practices for efficient CI/CD infrastructure management.
- [Monitoring using Java Melody](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Monitoring-using-Java-Melody/page.md): Learn to monitor Jenkins using Java Melody, a tool for real-time performance and resource usage tracking in Java applications.
- [Slack Notification Setup](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Slack-Notification-Setup/page.md): Learn to integrate the Slack Notification plugin with Jenkins for automatic build status messages in Slack channels.
- [Send Slack Notification](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Jenkins-Administration-and-Monitoring/Send-Slack-Notification/page.md): This tutorial explains how to modify a Jenkinsfile to send Slack notifications based on build status.

### Introduction

- [Course Introduction](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Introduction/Course-Introduction/page.md): This course covers advanced Jenkins techniques for real-world deployment challenges, requiring a basic understanding of Jenkins and focusing on integrated workflows.

### Understand the NodeJS Application

- [NodeJS Application Overview](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Understand-the-NodeJS-Application/NodeJS-Application-Overview/page.md): This article provides an overview of Node.js, its environment, and a sample project to help developers understand its basics and application setup.
- [Run and Test NodeJS App on Local Machine](https://notes.kodekloud.com/docs/Jenkins-Pipelines/Understand-the-NodeJS-Application/Run-and-Test-NodeJS-App-on-Local-Machine/page.md): Guide to running, testing, and collecting coverage for a Node.js Solar System app locally, plus Docker, tests, OpenAPI, and CI/CD considerations
