Your first Jenkins job

The Jenkins automation server allows automating the building and testing of a software project. In this tutorial, we will see how can we automate the building and testing of a fictitious software project.

In the beginning of times

Suppose, you are developing a learning software named abc. The source code of your abc project is already located in git repository in machine and can be accessed via ssh protocol - ssh://

Your workflow for building your software is simple. First, you clone the git repository to your local machine, then manually invoke the build tools.

Clone repository and manually build
 user@abc-01:~ # env GIT_SSH_COMMAND='ssh -i abc.key' git clone ssh://
 Cloning into 'abc'...
 remote: Counting objects: 6, done.
 remote: Compressing objects: 100% (3/3), done.
 remote: Total 6 (delta 0), reused 0 (delta 0)
 Receiving objects: 100% (6/6), done.
 Checking connectivity... done.
 user@abc-01:~ # cd abc
 user@abc-01:~/abc # echo 'Invoke commands to build the software'

After several builds, you find that this workflow is error prone and time consuming. You decide to automate the build process. In the following steps - we will see how Jenkins can help you with this task.