Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Advanced Jenkins

Course Summary

The Advanced Jenkins training course is designed to demonstrate how to build applications in an automated fashion with Jenkins.

The course begins by illustrating Jenkins installation in a distributed environment and setting up agents and using them in your Jenkins 2x pipeline jobs. The course then dives into advanced concepts like capacity planning, creating jobs in Blue Ocean UI using Declarative Pipelines, and scripted pipelines using hands on exercises. The course concludes with capacity planning, testing and migration.

Prerequisites: A background in development and testing is expected.

Purpose
Learn how to enable continuous integration in a distributed environment with Jenkins.
Audience
Developers looking to expand their Jenkins knowledge.
Role
Data Engineer - Data Scientist - DevOps Engineer - Project Manager - Q/A - Software Developer - System Administrator - Technical Manager - Web Developer
Skill Level
Advanced
Style
Workshops
Duration
3 Days
Related Technologies
DevOps Training | CI/CD | Testing

 

Productivity Objectives
  • Describe Continuous Integration
  • Configure Jenkins to create and build, and trigger jobs
  • Setup and measure code quality
  • Create alerting/notifications for builds
  • Run jobs to test your code and publishing the results
  • Explain capacity planning, backup and migration for your test environment

What You'll Learn:

In the Advanced Jenkins training course, you'll learn:
  • Introduction to Continuous Integration
    • What is CI?
    • How does CI help improve software quality?
    • Build automation basics
    • Common types of builds
    • Common CI environments
    • Expected outcomes when moving to CI
  • What is Jenkins?
    • History
    • Features
    • Overview of Jenkins architecture
    • Understand the Jenkins build infrastructure
  • Setting up Jenkins
    • Install Jenkins on Windows
    • Install Jenkins on MAC
    • Install Jenkins in a Docker Container
    • Install Jenkins on Ubuntu
    • Install Jenkins on RHEL
    • Uninstall Jenkins
  • Getting Started with Jenkins
    • Get the initial password
    • Install Suggested plugins
    • Create first user
  • Configuring Jenkins
    • Manage Jenkins
    • Configure System
      • Understand Quiet Period
      • Project name restrictions
      • Setting up Jenkins location and admin email
    • Email Configuration
      • Email setup
    • Global Tool Configuration
      • Setup JAVA_HOME. Setup MAVEN_HOME
  • All about Jobs
    • Types of Jobs
    • Create a freestyle project
      • Utilize Custom Workspace
      • SVM settings
      • Configure SCM
      • Set up a git-based (github/bitbucket) project
      • Build Triggers
      • Build Periodically
      • Cron Syntax Tricks
      • Build Environment Parameters
      • Email Notifications
      • Build other projects
      • Archive artifacts
      • Obtain artifacts
      • Fingerprint artifacts
    • Understand upstream/downstream projects
    • Update an existing job
    • Clone an existing job
    • Import/Export jobs
    • Create Maven Project
    • Monitor an external job
    • Multi-Configuration job
  • Extending Jenkins
    • Add plugins via plugin manager
    • Plugin versions
    • Uninstall plugins
    • Notable plugins and their functionalities
    • Recommended plugins and their functionalities
  • Creating Pipelines
    • Blue Ocean
    • Declarative vs scripted pipeline
    • Pipeline syntax generator
    • Understand Jenkinsfile
    • Create scripted pipeline job
    • Create declarative pipeline job
    • Simple to complex examples
    • Create and store artifacts
  • Jenkins Post Build and Reporting
    • Set up Post-Build Actions
    • Set up Test Reporting
  • Code Coverage
    • What is code coverage?
    • Why is code coverage important?
    • Measure code coverage
    • Configure Cobertura (for Java)
  • Code Quality
    • Code Quality and CI
    • Checkstyle (for Java)
    • PMD (for Java)
    • FindBugs (for Java)
    • Jenkins warning next generation plugin
    • Set up SonarQube
    • Integrate with SonarQube
  • Setting up Notifications
    • Email Notification
    • Slack Notification
    • Other type of notifications
  • Advanced Build Configuration
    • Parameterized settings
    • Parameterized builds and triggers
    • Controller/Agent distributed builds
  • Advanced Build Management
    • Joins
    • Parallel build
    • Trigger builds based on REST API
  • Jenkins Agents/Nodes/Distributed Builds
    • Create Node
    • Configure Node
    • Launch methods
    • Node properties
    • Set up Node tools
    • Utilize node in your jobs/pipelines
  • Jenkins Shared Libraries
    • Create shared library
    • Set up in Jenkins
    • Utilize shared library
  • Jenkins Security
    • Global security setting
    • JNLP port management
    • Remember Me
    • Forgeries
    • Authentication
      • Security realms
      • Configuring LDAP
      • Active directory
      • Jenkins own user database
      • Unix User/group database
    • Authorization
      • Configure job-level permissions in Jenkins
      • Matrix-based security
      • Role-based strategy
      • Project-based Matrix authorization strategy
      • People vs manage users
    • Plugins
      • Audit trail plugin
      • Job configuration history plugin
  • Jenkins Capacity Planning
    • Right sizing Jenkins controllers
      • Vertical growth
      • Horizontal growth
      • Hardware requirements
      • Memory requirements
    • Plugins which helps to monitor
      • Monitor with JavaMelody
      • Build Monitor View Plugin
      • Monitor Jenkins DataDog
    • KPI & Performance Management
      • Disk usage plugin vs CloudBees disk usage simple
      • Build history metrics plugin
      • Metrics plugin
      • Global build status plugin
      • Project statistics plugin
      • CouchDB statistic plugin
      • InfluxDB plugin
    • Multiple Jenkins Instances
      • Run multiple instances of Jenkins in the same machine
      • Trigger Jenkins jobs from one Jenkins to another
  • Testing using Jenkins
    • Unit Tests
    • Selenium/Web driver testing
    • Performance tests
  • Jenkins Backup & Restore
  • Jenkins REST API
    • Trigger builds via the REST API
    • Retrieve build status via the REST API
  • Jenkins Migration
    • Directory level
    • Use Plugins
    • Use Jenkins CLI
  • Best Practices for Jenkins
“I appreciated the instructor's technique of writing live code examples rather than using fixed slide decks to present the material.”

VMware

Dive in and learn more

When transforming your workforce, it's important to have expert advice and tailored solutions. We can help. Tell us your unique needs and we'll explore ways to address them.

Let's chat

By filling out this form and clicking submit, you acknowledge our privacy policy.