Jenkins 2 Bootcamp: Fully Automate Builds to Deployment 2020

Jenkins 2 Bootcamp: Fully Automate Builds to Deployment 2020
Jenkins 2 Bootcamp: Fully Automate Builds to Deployment 2020
English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 8.5 Hours | 3.59 GB

An introduction to the Jenkins build server using continuous integration and deployment techniques — all step by step.

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
  • Setup Jenkins in AWS using Lightsail
  • Use EC2 Plugin for Auto-scaling

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 you’ll learn

  • 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
Table of Contents

Introduction
1 Welcome Course Objectives and Overview
2 Course Focus and Approach
3 Build Maturity
4 What is Jenkins
5 About the Instructor

Full Installation
6 Overview
7 Windows Installation
8 Mac Installaiton
9 LInux Installation

The Basics
10 The Basics Overview
11 The First Job
12 Jenkins Dashboard
13 Failing Jobs
14 Copy and Rename Jobs
15 Update Plugins
16 Delete a Job
17 Manage Jenkins
18 Jenkins Configuration

Maven Projects
19 Maven Projects Overview
20 Jenkins Tabs
21 Jenkins Home Directory
22 Upgrading Jenkins
23 Confirm Maven Project Outside Jenkins
24 Maven Freestyle
25 Jenkins Workspace
26 Maven Jobs
27 Maven Build Modules
28 Failed Maven Projects
29 Scheduling Jenkins Jobs
30 Source Control Polling in Jenkins

Tests and Quality Analysis Continuous Inspection
31 Continuous Inspection Overview
32 Project Source Review (Unit Tests and updates for quality analysis)
33 Quality Analysis Plugins and Configuration
34 Build and Review
35 Unit Testing in Jenkins
36 Reviewing Quality Analysis
37 Enforcing Minimum Quality Scores
38 Improving Quality Scores

Publishing Build Artifacts to an Artifact Repository
39 Publishing Overview
40 Maven Repository Plugin and Configuration
41 Build and Review Artifact Publishing

Build Artifact Deployment with Jenkins
42 Deployment Overview
43 Tomcat Installation
44 Deployment Plugin
45 Deployment

Security in Jenkins
46 Security Overview
47 Manually Disable Security
48 Enable Security and Login
49 Adding Users in Matrix-Based Security
50 Users Role
51 Project Role

AWS Lightsail for Jenkins Production
52 Jenkins Production Using Lightsail Overview
53 Instance Flip
54 Clean Up
55 Update HostKey
56 Web Secured, Part 1
57 Web Secured, Part 2
58 Update Jenkins
59 Beyond Lightsail
60 AWS Signup
61 Course Repository
62 Jenkins Instance
63 Static IP Address and DNS
64 Instance Access
65 Jenkins Setup
66 Restart within Lightsail
67 Instance Snapshots

Scaling Jenkins in AWS Lightsail
68 Scaling Jenkins in AWS Lightsail Overview
69 Jenkins Setup
70 Build Node Instances, Part 1
71 Build Node Instances, Part 2
72 Jenkins Plugins
73 Jenkins Global Tools
74 Add Credentials
75 Attach Build Nodes
76 Update Build Nodes
77 Host Verify
78 Project Labels
79 Bigger is Better
80 Matrix Project
81 Maven Project, Revisited
82 Build Node Reduction
83 More Clean Up
84 Restore Part 1
85 Restore Part 2
86 Bigger Project
87 Scale Up Design
88 Web Proxy Server, Part 1
89 Web Proxy Server, Part 2
90 Securing with SSL
91 Jenkins Master Instance
92 Web Proxy Connection

Course Errata and Updates
93 Jenkins Incompatibility with Java 9, 10 and 11
94 Known Issue Maven Projects Fail with POM Parse Error
95 Maven Repository Server plugin causes Build Failure
96 Resolve Problem with MacOS Upgrade Breaking Git (new!)

Conclusion
97 Final Thoughts

Bonus Full Install on Windows
98 vs 64-bit Windows
99 Jenkins Installation on Windows
100 Jenkins Getting Started
101 Starting and Stopping Jenkins via Windows Services
102 Installation Notes for Windows 10 (Updated)
103 Google Chrome on Windows
104 Git for Windows
105 Git Configuration
106 Atom Installation on Windows
107 Atom Configuration
108 Java Installation on Windows
109 Java Configuration
110 Maven Installation on Windows

Bonus Special Offers
111 Bonus Exclusive Student Discounts