1. Home
  2. Training Library
  3. Jenkins CICD - Intro

Using Jenkins to Create CICD Pipelines - Introduction

play-arrow
Using Jenkins to Create CICD Pipelines - Introduction
Overview
Transcript
DifficultyIntermediate
Duration1h 47m
Students145
Ratings
5/5
star star star star star

Description

Introduction

This training course introduces you to Jenkins, a popular open source tool used to perform Continuous Integration and Continuous Delivery.

We spend time early on reviewing the key Jenkins features and associated terminology. We then take you through a deep dive in configuring Jenkins to perform automated builds using the Jenkins web administration console in hands on demonstrations, ensuring that you become familiarised with Jenkins and how to administer it. We’ll demonstrate features such as:

  • Installing and setting up Jenkins
  • Creating and configuring pipelines manually
  • Creating and configuring pipelines using a Jenkinsfile
  • Configuring Jenkins pipelines using the Blue Ocean interface
  • Defining build execution environments using docker containers
  • Triggering build pipelines, manually and automatically
  • Navigating downstream and upstream build projects
  • Connecting to version control repositories such as GitHub
  • Setting up build pipelines for Java based projects using Gradle
  • Recording artifacts and test results
  • Setting up and scaling out Jenkins with multiple build agents and executors using SSH

Learning Objectives

What you'll learn:

  • The basic principles of build automation as implemented within Jenkins and how should be a applied to manage and maintain building, testing, and deploying your own enterprise software projects
  • How to install, setup, and configure Jenkins pipelines
  • The key differences between Jenkins declarative and scripted pipelines
  • How to manage build artifacts and test results
  • How to scale out Jenkins using Master and Build Agent setups using SSH
  • The benefits of codifying pipeline build instructions using a Jenkinsfile
  • How to leverage Docker containers within a Jenkins pipeline to provide additional build isolation and flexibility
  • How to install and use the newer more modern pipeline centric BlueOcean user interface
  • How to integrate and leverage 3rd party build tools like Gradle, Maven, Yarn, Webpack, and many more within a Jenkins pipeline

Demonstration

This training course provides many hands on demonstrations where you will observe first hand how to use Jenkins to build and release different types of software projects, for example:

  • Building a front end application which has been developed using the React Javascript framework, using technologies such as Webpack and Yarn
  • Building a back end application developed using Java, Gradle, and Docker, requiring Jenkins to compile the source code, packaging it into a WebArchive file, and then finally releasing it into a Tomcat based Docker image complete with Splunk based instrumentation for logging and monitoring

Prerequisites

  • A basic understanding of CICD, or Continuous Integration and Continuous Delivery
  • A basic understanding of software development and the software development life cycle
  • A basic understanding of version control and associated workflows

Intended Audience

  • Software Build and Release Engineers
  • Software Developers
  • DevOps Practitioners

About the Author

Students11957
Labs28
Courses65
Learning paths14

Jeremy is the DevOps Content Lead at Cloud Academy where he specializes in developing technical training documentation for DevOps.

He has a strong background in software engineering, and has been coding with various languages, frameworks, and systems for the past 20+ years. In recent times, Jeremy has been focused on DevOps, Cloud, Security, and Machine Learning.

Jeremy holds professional certifications for both the AWS and GCP cloud platforms.
 

[Instructor] - Hello and welcome to this CloudAcademy course on using Jenkins to create CICD pipelines. 

In this first lecture, we'll cover off the course agenda, intended audience, learning objectives and course prerequisites. Before we start, I'd like introduce myself. My name is Jeremy Cook, I'm one of the trainers here at Cloud Academy, specialising in DevOps. Feel free to connect with either myself or the wider team here at CloudAcademy regarding anything about this course. You can email either myself and/or the CloudAcademy team at support@cloudacademy.com. This training course introduces you to Jenkins. Jenkins is a popular open source tool used to perform continuous integration and continuous delivery. We spend time early on reviewing the key Jenkins features and associated terminology. We then take you through a deep dive in configuring Jenkins to perform automated builds using the Jenkins web administration console in a series of hands-on demonstrations, ensuring that you become familiarized with Jenkins and how to administer it. 

We'll demonstrate features such as installing and setting up Jenkins, creating and configuring pipelines manually, creating and configuring pipelines using a Jenkinsfile, configuring Jenkins pipelines using the Blue Ocean interface, defining build execution environments using Docker containers, triggering build pipelines manually and automatically, navigating downstream and upstream build projects, connecting to version control repositories such as GitHub, setting up build pipelines for Java-based projects using Gradle, recording artifacts and test results, and finally, setting up and scaling out Jenkins with multiple build agents and executors using SSH. During the hands-on demonstrations, we show you how to use Jenkins to build and release different types of software projects. For example, a web front-end which has been developed using the React Javascript framework, for which Jenkins is configured to convert JSX into pure JavaScript using technologies such as Webpack and Yarn. And then, a back-end application developed using Java, Gradle, and Docker, requiring Jenkins to compile the source code, package it into a Webarchive file and then finally releasing it into a Tomcat-based Docker image, complete with Splunk-based instrumentation for logging and monitoring. 

The intended audience for this course includes software build and release engineers, software developers and/or DevOps practitioners. 

By completing this course, you will learn the basic principles of build automation as implemented within Jenkins and how it can be used effectively to manage and maintain your own software projects. Understand how to setup and configure Jenkins pipelines. Understand the key differences between declarative and scripted pipelines. Learn how to perform, manage and maintain artifacts and test results. Learn how to scale out Jenkins using master and build agent setups. Learn about the benefits of codifying our pipeline configurations into a Jenkinsfile. Learn how to leverage Docker containers within a Jenkins pipeline to provide additional build isolation and build tool flexibility. And finally, learn how to install and use the newer more modern pipeline centric BlueOcean user interface. 

The following prerequisites will be both useful and helpful for this course. A basic understanding of CICD, or Continuous Integration and Continuous Delivery. A basic understanding of software development and the software development life cycle. And a basic understanding of version control and associated workflows. Now, if you're unfamiliar with CICD, we suggest you pause and consider taking either or both of the following CloudAcademy courses to bring you up to speed. Introduction to Continuous Integration and/or Introduction to Continuous Delivery. 

Okay, the course introduction has now been completed. 

Go ahead and close this lecture and we'll see you shortly in the next one.