Jenkins Quick Start
Linux Training Architect II in Content
Jenkins is an automation server, and as an open-source platform, it has an immense amount of integration benefits when it comes down to engaging in software development and projects that require rigorous testing.
In this course, we will examine the requirements surrounding a minimalistic installation for getting Jenkins up and running. We will work with a master Jenkins server and investigate what it takes to set up a basic slave node, plus how the two communicate with one another. Learners will discover how easy it is to deploy extra nodes within a Jenkins environment. Lastly, we will look at some of the software and plugins that should be taken into consideration depending upon one’s environment's needs. Those who are new to this automation server’s capabilities will gain exposure to the fundamentals of Jenkins; thus, this course serves as an introduction.
Setting Up and Using Jenkins
About This Course
This is a quick introduction to Jenkins, along with the layout of this course. Moreover, the course aims to show how one can get a basic Jenkins server set up and running with the use of a few basic build tasks.
About the Author
This is just a brief introduction about myself, Kenny Armstrong. I will be your instructor for this course, and I look forward to learning something new with you!
Setting Up and Using Jenkins
Getting Jenkins Up and Running
Installation and Configuration
With our first lesson, we are going to set up a basic Jenkins build server on a Red Hat Enterprise Linux 8 system. We will also configure it so that it will work with Nginx as a proxy server, set up the firewall, and make sure that Security-Enhanced Linux (SELinux) is properly configured to work with it too. Finally, we will learn how to create our first Jenkins administrator user account.
Preparing the Environment: Build Accounts
Now that the server has finished installing, we must modify our Jenkins build account. We will create another build account on a separate host that we will use later on to conduct slave builds. Together, we will also be walking through this build process, and then cover the reasoning behind each adjustment that is being made.
Our First Jenkins Build
We will set up our first build using Jenkins. All that this build sets out to do, is print out the contents of a log file, but the concepts and procedures to create a build in Jenkins still apply. Once we become more comfortable with completing a simple build project, we will be ready to tackle tasks of greater complexity.
Plugins and How to Manage Them
This lesson will provide an introduction to the purpose that plugins serve within Jenkins. We will see where they can be updated, enabled, disabled, and where we can install new ones. We will also configure a couple of plugins and use them as we work through some test builds.
Creating Scheduled Builds
We are now going to look at Jenkin’s ability to trigger a build, and this is one of its features that makes it truly a phenomenal tool. In our case, we are going to use Build Triggers to schedule builds based on repeated time frames. We will also look at the Schedule Build plugin for one-off builds as well.
Setting Up a Build Slave
This lesson introduces us to the build slave, and how we add one to our Jenkins configuration. Build slaves are handy if we want to only use the main Jenkins server as a command and control console, while all of the actual job executions take place on other systems.
Launching Jobs on the Slave Node
In this lesson, we will go over how to set up a job that is capable of running on a specific slave node. Additionally, we will examine how to configure the job so that it can be sent to the slave node, while the slave node itself can redirect the build task to another host. Depending on our environment, this can be useful if different hosts contain various sets of build tools.
Where to Go from Here?
Congratulations — you’ve made it to the end of this course! In this video, we take a look at some of the other Jenkins course offerings from Linux Academy, highlighting the various paths that can be taken with this popular build platform.