Continuous Integration with Jenkins Training

Answers to Popular Questions:

 
Yes, this class can be tailored to meet your specific training needs.
Yes, we provide Java Programming consulting services.
Yes, group discounts are provided.

Course Description

 
This hands-on course is a good introduction to using Jenkins effectively from start to finish. It teaches the principles of continuous integration and the knowledge of how to implement it with automated test execution using Jenkins. It makes a clear distinction between continuous integration, continuous delivery, and continuous deployment. Participants will use a local copy of Jenkins to create and run jobs, to link to a version control system, to run automated testing, and to generate development reports. In addition, participants will also learn how the interface works between Jenkins and Gradle and how to kick off Gradle scripts.
Course Length: 2 Days
Course Tuition: $1090 (US)

Prerequisites

This course is intended for Java developers who need to know how to use Jenkins to automatically deploy software into a testing environment.

Course Outline

 
This hands-on course is a good introduction to using Jenkins effectively from start to finish. It teaches the principles of continuous integration and the knowledge of how to implement it with automated test execution using Jenkins. It makes a clear distinction between continuous integration, continuous delivery, and continuous deployment. Participants will use a local copy of Jenkins to create and run jobs, to link to a version control system, to run automated testing, and to generate development reports. In addition, participants will also learn how the interface works between Jenkins and Gradle and how to kick off Gradle scripts.
 
Course Topics
• Introducing Continuous Integration and Jenkins
• Installing and Running Jenkins
• A Jenkins Job
• Advanced Jenkins
• Jenkins Plug-ins, specifically SonarQube
• Best Practices
 
Course Objectives
Upon completion of this course, participants will be able to:
• Install and configure Jenkins in a servlet container.
• Create Jenkins builds.
• Configure Jenkins to use Gradle (emphasized), Apache Ant, and Apache Maven.
• Use Jenkins to generate Java coding standards reports, code coverage reports, and change notices.
• Use the SonarQube plug-in to generate a report and to open and review how the information is organized.
 
 
Course Outline
 
I. Introducing Continuous Integration and Jenkins
A. Agile Development
B. Continuous Integration versus Continuous Delivery versus Continuous Deployment
C. History of Jenkins
D. State of the Jenkins Community
 
II. Installing and Running Jenkins Intro
A. Running Jenkins from the jar File
B. Installing Jenkins in a Servlet Container
C. Setup Security
D. Email and Version Control
E. Master/Slave Configurations
 
III. A Jenkins Job
A. Create a job
B. Configure a job
C. Run a job manually
D. Run a job when source code is checked into version control
E. Run a job on a regular schedule
 
IV. Advanced Jenkins
A. Monitor External Jobs
B. Distributed Builds
C. File Fingerprint Tracking
D. Using Jenkins for non-Java Projects
E. Matrix Projects
F. Splitting a Big Job into Smaller Jobs
G. Concept of a Pipeline
 
V. Jenkins Plug-ins
A. Change Reporting
B. Code Coverage
C. Static Analysis
D. Performance Reporting
E. Style Checking
 
VI. SonarQube Plug-in
A. Install the SonarQube Plug-in
B. Integrate Jenkins with SonarQube
C. Locate and Open Generated Report
D. Review the Report’s Organization
 
VII. Best Practices for Jenkins
A. Culture Change
1. Bring down the risk by incremental changes
2. Check in code daily
3. Fast feedback loop
B. Attend to broken builds
1. Build alerts email, pagers etc. on broken builds.
C. Write unit tests
1. Follow test pyramid
D. Re-use build Scripts across IDE and Jenkins
1. Leverage Gradle.
E. Use Discover Templates
 
VIII. Exercises
A. Lab 1
B. Lab 2
C. Lab 3
D. Lab 4

Course Directory [training on all levels]

Upcoming Classes