Jenkins Bootcamp: Fully Automate Builds Through Deployment

An introduction to the Jenkins build server using continuous integration and deployment techniques -- all step by step.
4.3 (565 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
5,034 students enrolled Bestselling in Jenkins
$19
$50
62% off
Take This Course
  • Lectures 69
  • Length 2.5 hours
  • Skill Level All Levels
  • Languages English, captions
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 10/2015 English Closed captions available

Course Description

This is a comprehensive course designed to show how to setup and run a Jenkins CI server starting with continuous inspection (build, test and analysis) all the way through to continuous deployment. This course provides a strong foundation for implementing continuous inspection, continuous integration, continuous delivery, and even continuous deployment at your company or studio. In order to ikeep the course short and to-the-point, several decisions were made in order to provide a complete path from CI to CD.

The pipeline created in this course consists of the following:

  • Jenkins CI server installed and configured on Windows
  • Git as the source control system
  • Java as the main programming language of build projects
  • Maven as the build tool
  • Findbugs, PMD, and Checkstyle as the static code analysis tools
  • Tomcat as the deployment server

This set of tools provides a comprehensive, end-to-end implementation continuous deployment pipeline. Jenkins can be installed on many operating systems and supports a myriad of tools and technologies -- which means, this course provides tremendous value to those comfortable or interested in other operating systems and/or technologies.

Course Outline

Introduction provides an overview for the course, which leas to the Core Concepts for Jenkins. This provides a foundation for the remainder of the course.

Installation provides step-by-step instructions on how to setup Jenkins and all the related tools specifically on Windows. The same principles are applicable to other operating systems as well.

The Basics provides a first look at Jenkins at work with a very simple "freestyle" project. This allows us to learn the Jenkins interface and the key features it provides.

After that, we dive into Maven Projects specifically -- since Jenkins natively understand Maven and thus provides special features for Maven projects.

Jenkins can do so much more than simply building. In Test & Quality, we hook up a standard set of unit testing and quality analysis tools for Java projects. Then, we use that information to affect the build status based on established standards.

We also cover how to use Jenkins as an artifact repository which is used to store the build artifacts, like jars and wars, after successful builds. This is particularly useful when integrating Jenkins with other tools in a more comprehensive software delivery strategy.

Then, we bring everything together for Deployment to a running Tomcat server. Don't worry, I'll walk you through the complete setup and configuration to work seamlessly with Jenkins!

Finally, no course would be complete without talking about Security. In this final chapter, we setup Jenkins to allow users to login and only see their projects.

Course Features



Presentations provide audio/video training of conceptual ideas in each major area or introduction of new concepts.

Screencasts provide a video of the instructor's computer system with any actions, commands, or screens displayed and narrated. There are several hours of screencat video content -- it makes up the vast majority of the course. Any command line based screencast will include a command listing in the lecture downloads.

What are the requirements?

  • Basic computer skills
  • Ability and access to install software (admin rights required)
  • Desire to learn something new

What am I going to get from this course?

  • Install Jenkins CI server on Windows
  • Install and configure several tools commonly used with Jenkins
  • Understand the basics of continuous inspection, continuous integration, and continuous deployment
  • Use Jenkins effectively to build, test, analyze and deploy Java projects
  • Apply the techniques and experience to implement Jenkins and/or a continuous integration system

What is the target audience?

  • Developers, software engineers, and programmers wanting to avoid "it works on my machine" syndrome
  • IT professions looking to implement continuous inspection through continuous deployment at their company
  • IT management that wants to have a deeper understanding of Jenkins and other DevOps concepts
  • DevOps (Development/Operations) professional looking at Jenkins as a build tool or as part of a larger software delivery pipeline

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Introduction
Welcome: Course Objectives and Overview
Preview
02:33
Course Focus and Approach
Preview
02:26
Section 2: Core Concepts
What is Jenkins?
Preview
01:24
Build Maturity
01:15
Build Cycle
01:23
Continuous Buzzwords
01:22
Jenkins Architecture
01:26
Jenkins Terms
02:48
Section 3: Installation
Installation Overview
01:42
32 vs 64-bit Windows
01:25
Google Chrome on Windows
02:42
Git for Windows
08:53
Notepad++ Installation on Windows
02:03
Notepad++ Configuration
03:18
Java Installation on Windows
03:12
Java Configuration
02:54
Maven Installation on Windows
04:40
Jenkins Installation on Windows
02:24
Starting and Stopping Jenkins via Windows Services
02:00
Installation Notes for Windows 10 (Updated)
Article
Section 4: The Basics
The Basics Overview
Preview
00:29
The First Job
Preview
02:39
Running the First Job
Preview
01:35
Jenkins Dashboard
01:51
Failing Jobs
02:58
Disable Job
01:04
Update Plugins
02:20
Add Plugins
02:03
Delete a Job
02:01
Jenkins Configuration
03:45
Section 5: Maven Projects
Maven Projects Overview
00:50
Confirm Maven Project Outside Jenkins
02:21
Git Plugins
01:33
Maven Jobs
02:10
Maven Build Modules
02:15
Jenkins Workspace
01:30
Failed Maven Projects
02:58
Scheduling Jenkins Jobs
03:04
Source Control Polling in Jenkins
01:47
Applying Configuration Changes
01:00
Jenkins Tabs
02:30
Jenkins Home Directory
02:05
Section 6: Tests and Quality Analysis: Continuous Inspection
Continuous Inspection Overview
00:51
Project Source Review (Unit Tests and updates for quality analysis)
02:16
Unit Testing in Jenkins
01:46
Quality Analysis Plugins and Configuration
02:17
Reviewing Quality Analysis
01:49
Enforcing Minimum Quality Scores
03:10
Improving Quality Scores, Part 1
02:01
Improving Quality Scores, Part 2
05:04
Section 7: Publishing Build Artifacts to an Artifact Repository
Publishing Overview
00:45
Maven Repository Plugin and Configuration
01:10
Build and Review Artifact Publishing
01:42
Section 8: Build Artifact Deployment with Jenkins
Deployment Overview
00:53
Tomcat Installation
02:32
Tomcat Configuration
02:59
Deployment Plugin
00:39
Project Source Review for Deployment (WebApp module)
00:51
Project Configuration for Tomcat Deployment
00:54
Deployment
02:03
Section 9: Security in Jenkins
Security Overview
00:42
Enable Security and Login
02:42
Role Strategy Plugin
02:55
Adding Users
01:10
Users Role
02:27
Project Role
03:54
Section 10: Conclusion
Review
Preview
00:54
Final Thoughts
00:56
Bonus: Exclusive Student Discounts
Article

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Jason Taylor, Sr. Software Engineer, Technical Trainer on 14 Udemy Courses

With nearly 20 years of programming and software development experience, I started out teaching myself programming while in High School. I put myself through college working for a local Internet Service Provider as a programmer. Before finishing college, I developed and sold an award winning website to a Dot-Com start-up. After college, I have worked at several companies ranging from start-ups to large enterprises focusing on Java and client-side technologies (HTML/CSS/JavaScript). Throughout my career, I have opportunity to learn many software development best practices and exposure to several version control systems.

Ready to start learning?
Take This Course