Jenkins Foundation Training

Duration: 3 Days
Mode: Classroom/Online

Jenkins is a free and open-source countinous integarion tool and automation server.
The Jenkins project was originally named Hudson. Jenkins can help to setup a continuous integration, delivery and deployment pipeline in an easy and efficient way. With the help of multiple plugin support you can use Jenkins with a huge range of tools and platforms.

In this course, I will start from scratch, from the very basics and go up step-by-step. Do not worry if you have never used Jenkins. We will learn everything as per the course outline below.


About Trainer: Raghav, has over 11 years of experience in software testing, especially in automation testing, DevOps & CI. Worked as automation test architect and delivered several automation testing projects. He teaches automation testing and related concepts on online platforms like YouTube and Udemy. Raghav also takes personal and corporate onsite classroom training as per availability.
To find out more about Raghav – LinkedIn  Udemy  YouTube  LifeCharger


Overview
This training course is aimed to train participants on Jenkins foundation to intermediate level. Participants will learn the concepts of Continuous Integration and Deployment using Jenkins. Training will cover hands-on exercises on job configuration, user management, plugin management, Git, server deployments and related topics. This training will start from basic, anyone interested to learn Jenkins from scratch can join and get trained to work with Jenkins on enterprise projects. This will be a hands-on training with focus on practical use and application of all the topics covered as part of this training.

Audience
Development and QA engineers
Technical project manager
Anyone interested to learn Jenkins

Pre-requisites
Basic knowledge on SDLC and STLC

What participants will learn?

  • What is Jenkins
  • How to setup and configure
  • Job creation and management
  • Plugin management
  • User role creation and management
  • Integration with Git
  • Automated deployments
  • Build and delivery pipelines
  • Job Parameterization
  • Command line executions
  • Jenkins node management

Course outline

Introduction

Learning Objective: In this module, participants will learn what is Jenkins, continuous integration and where does Jenkins fits into SDLC (Software Development Life Cycle)

  • What is Jenkins
  • Why to use Jenkins
  • How Jenkins fits into SDLC
  • What is CI (Continuous Integration

Setup

Learning Objective: In this module, participants will learn how to setup Jenkins and use Jenkins on their systems

  • Prerequisites
  • How to setup Jenkins
  • How to start Jenkins from war file
  • Installing as service
  • Account creation
  • GUI & features
  • Basic configurations

Hands-On: Install and setup of Jenkins on your systems


Job Creation

Learning Objective: In this module, participants will learn to create and configure jobs in Jenkins

  • What are Jobs
  • How to create jobs
  • How to configure jobs
  • How to monitor jobs

Hands-On: Create and run jobs in Jenkins


Plugins management

Learning Objective: In this module, participants will learn how to use and manage plugins

  • What are plugins
  • How to add, update and remove plugins
  • Commonly used plugins
  • Configure Jenkins to work with java, Git, Maven
  • Use plugins in job configuration

Hands-On: Add and manage plugins. Use plugins in jobs


User Configurations

Learning Objective: In this module, participants will learn how to create and manage users in Jenkins

  • How to create users in Jenkins
  • How to manage users
  • Assign user roles
  • Assign user privileges and access
  • Authentication & authorization

Hands-On: Create and manage user roles


Git version control system

Learning Objective: In this module, participants will learn how to work with Git and Jenkins

  • Jenkins Integration with Git version control system
  • Configure jobs to check for source code changes periodically
  • Trigger jobs based on commits in Git repository

Hands-On: Setup integration with Jenkins and Git. Configure jobs with version control system


Automated deployments

Learning Objective: In this module, participants will learn how to deploy application on server using Tomcat & Jenkins

  • What is automated deployment
  • Install and configure Tomcat
  • How to use Jenkins for automated deployments
  • Practical demo with tomcat server

Hands-On: Deploy application on Tomcat using Jenkins


Master slave configuration

Learning Objective: In this module, participants will learn how to work with multiple nodes in Jenkins

  • What is master slave configuration
  • How to create and add nodes
  • How to run jobs on slave nodes

Hands-On: Create and manage nodes


Jenkins pipeline

Learning Objective: In this module, participants will learn how to create pipelines

  • What is pipeline
  • Build pipeline setup
  • Delivery pipeline setup

Hands-On: Create and run pipelines in Jenkins


Jobs parameterization

Learning Objective: In this module, participants will learn how to parameterize and chain jobs

  • What is parameterization
  • How to parameterize jobs in Jenkins
  • How to pass parameters to downstream jobs

Hands-On: Create and run pipelines in Jenkins


Command Line

Learning Objective: In this module, participants will learn how to run jobs from command line and command line features

  • How to use Jenkins command line
  • How to run jobs from command line
  • Command line options

Hands-On: Run jobs from command line with multiple options


Automation test integration

Learning Objective: In this module, participants will learn how to setup Jenkins to run automated tests

  • How to run tests with Jenkins
  • How to configure reports
  • UI tests
  • Performance tests

Hands-On: Create and run automated UI and Performance tests in Jenkins


Jenkins on Docker setup

Learning Objective: In this module, participants will learn how to setup Jenkins on docker

  • How to setup docker
  • How to pull Jenkins image
  • Docker commands
  • Setup and run Jenkins with Docker

Hands-On: Setup and run Jenkins with docker


Jenkins maintenance and backup

Learning Objective: In this module, participants will learn how to do Jenkins maintenance

  • How to change home directory
  • How to take backup
  • How to move Jenkins to different server
  • Best Practices

Hands-On: Change home directory, take backup, move jenkins


Useful resources
Q&A | Discussion | Feedback


Lab Requirements
Operating System Windows 10 or higher
OR
Mac OS 10.11 or higher
CPU 2 GHz or faster 32-bit (x86) or 64-bit (x64) processor
Memory 4/8 GB RAM
Hard Drive 5 GB available hard disk space
Others Participants should permission to download and install software
Participants should be able to update environment variables on system
Good network bandwidth


This training is conducted by Raghav.

To check availability and confirmation send below details to training.raghav@gmail.com

Name
Education
Experience
Skill set
OS preference
Why you want to take this training

For groups & corporates, please send the following information
Dates
Location
Number of Participants
Participants background (experience level, skill set etc)
Operating System preference
Is the lab setup for hands-on