In this course you will understand the key concepts of DevOps and delve into Jenkins Pipeline, a set of plugins that provides a toolkit for designing simple-to-complex delivery pipelines as code. To design a production-ready delivery pipeline, you will start by creating a simple pipeline and understanding Jenkins Pipeline terms and its particularities. Next, you will set up Docker to create isolated build environments. To consolidate your learning, you will create a delivery pipeline to build, test, and deploy a Java web project. In this project, you will understand and implement the different stages of the pipeline towards Continuous Delivery.
About the Author
Rodrigo Zacheu Russo is a Certified Jenkins Engineer and has 14+ years’ experience in software development with different programming languages and technologies in different countries (Brazil, US, Portugal, Germany, and Austria) and projects in companies ranging from financial institution to game and e-commerce ventures, Goodgame Studios and HERE. He is an enthusiastic practitioner of Agile methodologies, Continuous Delivery, and DevOps, with large-scale adoption experience. He is always seeking to optimize the software development life cycle through automation, process improvements, and developing new tools and techniques. Rodrigo holds a B.S. in Computer Science and a post-graduate qualification in Software Engineering.
DevOps and the Delivery Pipeline
This video provides an overview of the entire course.
DevOps has innumerous definitions, in this video we will clarify how the DevOps concept came to live and define the term.
When we talk about DevOps, collaboration is a key point. To support the DevOps culture, in this video, we will learn about the Delivery pipeline to support all people involved in the delivery process to easily visualize the stages to deploy a new change in the software.
For a long time, Jenkins has had a default interaction model the web UI, but together with CI practices, Jenkins creator has understood that the delivery pipeline should be part of the source code. In this video we will give an introduction of this new feature.
To start using Jenkins pipeline we need to install some required plugins. In this video, we will install the necessary plugins to start writing Jenkins Pipelines.
Now that you are done with the videos of section 1, let’s assess your learning. Here, are a few questions; followed by a few options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet.
Getting Started with Jenkins Pipeline
In this video, we will understand the scripted pipeline, a flexible and powerful way to start creating pipelines in groovy on Jenkins.
In this video, we will explore the most common step in a Jenkins pipeline and see how we can handle password on Jenkins pipeline to do not expose it to the users.
Life is not a bed of roses, and with Jenkins it’s not different. In this video, we will understand how we can handle error during the pipeline execution and add post build steps.
Now that you are done with the videos of section 2, let’s assess your learning. Here, are a few questions; followed by a few options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet.
The JenkinsFile
Jenkins pipeline can be written in two ways, declarative and scripted. In this video, we will understand the declarative pipeline syntax and its nuances.
CI as code can be accomplished via the JenkinsFile, a way of keeping the logic of your pipeline stored at the same repository as the application that you are build. This video will explain how this is possible with Jenkins.
In this video, we will create a JenkinsFile and commit it together with a java project and create a pipeline project on Jenkins to run the pipeline from this file.
Now that you are done with the videos of section 3, let’s assess your learning. Here, are a few questions; followed by a few options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet.
Building with Docker
Docker is a well-known technology widely used today. In this video, we will briefly explain what Docker is and how it can support the CI environment.
To run Docker on Jenkins nodes we need first to install the Docker platform to start building the application with containers. This video will explain how to prepare the Jenkins machine for that.
To have isolated and reproducible environments, Docker is the right tool to enable developers and the CI system to achieve it. In this video, we will see how to use Docker containers from Jenkins pipeline.
Now that you are done with the videos of section 4, let’s assess your learning. Here, are a few questions; followed by a few options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet.
Creating a Continuous Delivery Pipeline
To effectively apply the techniques learnt in this course, we will learn the Spring PetClinic project - a Java web project that we will create to deploy to a production-like environment.
Traceability is an important topic for DevOps teams, who need to be able to trace code from commit to deployment. In this video, we will understand how Jenkins can help us with that.
In this video, we will create an approval gate and a stage to deploy the project onto a production-like environment.
Now that you are done with the videos of section 5, let’s assess your learning. Here, are a few questions; followed by a few options, out of which 1 is the correct option. Select the right option and validate your learning! The answers are provided in a separate sheet.