In this hands-on lab I am going to issue you a challenge: use Jenkins and its plugins to build an artifact. You will be using no less than three projects that need to be linked in order to produce the artifact. Are you up to the challenge?
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Create project1
This project requires the Parameterized trigger plugin. Go to Manage Jenkins, then Manage Plugins, and install the parameterized trigger plugin.
Configure
project1
to take a string parameter. Call it what you like. Set the default to what you like.Create a build step for execute shell. Put in the following as the build step (
$var
is the name of the parameter you gave to the previous step):echo "name="$var > project1.txt
Post build, archive the artifact
project1.txt
and fingerprint it.Post build, this project should trigger
project2
and send parameters from theproject1.txt
file.- Create project2
This should be a parameterized project.
It should have one string parameter called name.
The build step should be:echo "Hello" $name > project2.txt
The artifact
project2.txt
should be archived and fingerprinted.
Post build, this should trigger a build onproject3
.- Create project3
This project requires the copy artifact plugin.
Go to Manage Jenkins and install the copy artifact plugin.
Create the project as a Freestyle job, in the build steps.
First, copy the
project2.txt
artifact fromproject2
.
Second, create theproject3
artifact by creating a shell build step:content=`cat project2.txt` echo $content "this is from project3." > project3.txt
Archive the file
project3.txt
and fingerprint the archive.
Verify that the file contains the required text.