
Paths
Continuous Integration with Jenkins
The courses in this path show you how to use Jenkins for all your continuous integration needs. Jenkins is an incredibly popular automation server that can help you build, test,... Read more
What you will learn
- Using Jenkins to build and deploy apps
- Using and managing Plugins
- Using declarative Jenkins pipelines
- Building a multi-node Jenkins build farm
- Running a zero-agent Jenkins build farm with Docker
- Automating Jenkins with Groovy
- Building a full CI/CD pipeline with Jenkins, Docker and Kubernetes
- Using Jenkins X for Cloud-native CI/CD
Pre-requisites
You should be familiar with technology principles and DevOps fundamentals. It’s an added bonus if you’re familiar with build tools.
Continuous Integration with Jenkins
The courses in this path show you how to use Jenkins for all your continuous integration needs. Jenkins is an incredibly popular automation server that can help you build, test, and deploy your software. This path lays the foundations for you as you get started with building and deploying apps using Jenkins. You’ll then learn about Jenkins Plugins, Declarative Jenkins Pipelines, automating Jenkins with Groovy, and more. By the end of this path, you’ll have all you need to get up and running Jenkins as part of your CI/CD pipeline.
Getting Started with Jenkins
3h 14m
Description
Manually deploying software is both painful and rife with inefficiencies. In this course, Getting Started with Jenkins, you’ll learn to automate mundane, repetitive tasks with Jenkins. First, you’ll set up a Jenkins instance. Next, you’ll learn how to automate tasks with both Freestyle and Pipeline job types. Finally, you’ll explore practical examples of compiling, testing, packaging, and deploying software. When you’re finished with this course, you’ll have the skills and knowledge of Jenkins needed to markedly boost your productivity!
Table of contents
- Course Overview
- Setting Up a Jenkins Learning Environment
- Building Applications with Freestyle Jobs
- Automating Jobs Configured with Code
- Colocating Jobs and Source Code with Jenkinsfile
Using and Managing Jenkins Plugins
2h 23m
Description
Plugins extend every part of Jenkins, and there are over 1,500 plugins which add all sorts of features - building test reports, sending chat notifications, deploying to production platforms, and even configuring Jenkins itself. Plugins are regularly updated with new features and security patches, but you need to be aware that updates can cause failures. In this course, Using and Managing Jenkins Plugins, you'll learn techniques to get the most out of Jenkins plugins. First, you'll find out how the plugin model works in Jenkins. Then, you'll explore how to discover, install, and use plugins - both in freestyle and pipeline jobs. Next, you'll see how easy it is to build a custom plugin and extend Jenkins with your own features. Finally, you'll gain an understanding on how to safely manage your plugins. When you're finished with the course, you'll be able to put plugins to work and keep all of your jobs running smoothly.
Table of contents
- Course Overview
- Understanding Jenkins and the Plugin Model
- Installing and Using Plugins
- Writing Custom Plugins
- Managing and Upgrading Plugins
Using Declarative Jenkins Pipelines
2h 5m
Description
Declarative pipelines are the modern way to use Jenkins, replacing freestyle jobs which are stored as XML on the Jenkins server with Jenkinsfiles that are stored in source control with your project. In this course, Using Declarative Jenkins Pipelines, you'll learn how to use pipelines and how they make your Jenkins setup much easier to maintain. First, you'll see the basics of pipelines, how to structure jobs and run build steps. Then, you'll learn how pipelines promote re-use, with parameterized builds, Groovy code, and steps that can be accessed in shared libraries. Lastly, you'll understand how the features of pipelines support many different workflows - from using Docker containers as build agents, to running pipeline jobs across multiple source code branches. When you've finished with the course, you'll be ready to rewrite all your old freestyle jobs as pipelines, and make Jenkins a valuable tool rather than a maintenance burden.
Table of contents
- Course Overview
- Introducing Pipelines and the Jenkinsfile
- Building Re-usable Pipelines
- Using Pipelines to Support Your Workflow
Building and Using a Multi-node Jenkins Farm
2h 17m
Description
Multi-node Jenkins Management can help you meet complex business needs. In this course, Building and Using a Multi-node Jenkins Farm, you’ll learn how to setup monitor, back up, restore, control, and optimize a Jenkins build farm. First, you’ll explore Jenkins' distributed build architecture and master-node setup. Next, you’ll discover how distributed builds work. Finally, you’ll learn how to optimize distributed builds, how to back up and restore your installations, and how to prepare your Build Farm for integration with other systems. When you’re finished with this course, you’ll have the skills and knowledge to plan and create muliti-node setups aimed at managing distributed builds in order to meet complex business needs.
Table of contents
- Course Overview
- Setting up a Master Node
- Leveraging Distributed Builds
- Building Pipeline Optimizations
- Managing Distributed Build Farms
- Triggering Builds Remotely
Running Jenkins in Docker
2h 6m
Description
Jenkins is a fundamentally master/agent architecture - but managing the agents becomes a chore. In this course, Running Jenkins In Docker, you’ll learn to work with Jenkins in Docker containers. First, you’ll explore some quick Docker fundamentals. Next, you’ll discover Jenkins agent architecture in the Docker paradigm. Finally, you’ll learn how to implement a fully distributed build farm using Docker containers. When you’re finished with this course, you’ll have the skills and knowledge of Jenkins and Docker needed to automate your build agents.
Table of contents
- Course Overview
- Understanding Docker and Jenkins
- Creating a Jenkins Build Farm with Docker
- Working with Multi-architecture Containers in Jenkins
- Maintaining Your Build Farm
Automating Jenkins with Groovy
2h 1m
Description
Once you’ve been working in Jenkins for a while, you can find yourself doing the same thing over and over again, which is never good for a developer. In this course, Automating Jenkins with Groovy, you’ll learn to make Groovy do the grunt work. First, you’ll explore the language itself with Groovy Fundamentals. Next, you’ll discover how Groovy interfaces with Jenkins. Finally, you’ll learn how to automate your Jenkins work with a step-by-step playbook of Groovy scripts. When you’re finished with this course, you’ll have the skills and knowledge of Groovy needed to automate Jenkins and take your build ops to the next level.
Table of contents
- Course Overview
- Groovy Fundamentals, Briefly
- Working with Jenkins and Groovy Together
- Creating Builds with Groovy
- Working with Shared Libraries and Plug-ins
- Managing Users and Credentials
Building a Modern CI/CD Pipeline with Jenkins
1h 47m
Description
DevOps engineers are often asked to build, test, and deploy applications in a way that's reliable and repeatable without making code changes to the application itself. One of the tools that's available to do that is Jenkins pipelines. In this course, Building a Modern CI/CD Pipeline with Jenkins, you will dive into foundational knowledge to write a Jenkins pipeline. First, you will learn the basic syntax and expressions. Next, you will discover how to version your pipeline code in GitHub. Finally, you will explore how to import functions and pipeline code from a shared library. When you are finished with this course, you will have the skills and knowledge needed by DevOps engineers to create, version, and deploy pipeline code.
Table of contents
- Course Overview
- Getting Started with Jenkins Scripted Pipelines
- Building and Testing Code
- Integrating Container Security and Compliance
- Implementing Continuous Deployment Pipelines
- Troubleshooting and Improving Jenkins Pipelines
Using Jenkins X for Cloud-native CI/CD
3h 8m
Description
Jenkins X is an exciting new CI/CD technology, designed for the cloud and completely independent of classic Jenkins. In this course, Using Jenkins X for Cloud-native CI/CD, you'll gain the ability to create and make use of Jenkins X in order to streamline CI/CD. First, you'll explore how to create a Kubernetes cluster and install Jenkins X on top of it using JX Boot. Next, you'll discover how to create pipelines using build packs, whilst managing your environments and deployments using GitOps principles. Finally, you'll learn how to use ChatOps to collaborate between your team and orchestrate Jenkins X. When you're finished with this course, you'll have the skills and knowledge of Jenkins X to fast-track your CI/CD.
Table of contents
- Course Overview
- Jenkins X Aerial View
- Setting up Jenkins X
- Creating Your First Application with Quick Starts
- Managing Environments with GitOps
- Working with GitHub Pull Requests and ChatOps
- Creating Custom Quick Starts and Build Packs
- Creating Custom Jenkins X Pipelines
- Versioning and Releasing Applications
- Setting a Custom Domain and Enabling TLS