If you are a project administrator, you have the permissions to create new jobs. This page details the different types of job available and when they should be used. New jobs can be added by navigating to the project you wish to create the job for and then clicking New Item in the sidebar.
When naming your job it is highly recommended to choose a name without
spaces, for example:
gcc_483_build, as the name is included
in the build path. During job configuration a more readable display name can
be chosen, which will be used in the web interface.
Items can be renamed after creation without the loss of build history, so choosing an ideal name initially is not essential.
The freestyle project is the simplest build type. A freestyle job allows the maximum amount of configuration and targets a specific build configuration. For example, one job may compile and run tests on the GCC 4.8.3 compiler on Linux every night, whereas another might only run static analysis tools after every commit.
For help on configuring freestyle jobs see the freestyle page.
Maven projects target Java projects built using the Maven build system. We do not currently support or recommend using the Maven project type.
The Pipeline is a new Jenkins job type with allows the configuration to be stored in the code repository along with a number of other useful features. For new projects, or projects where multiple branches are in use, we would recommend the use of a Pipeline job type. For more details see the Pipeline guide page.
This is a niche job type which allows jobs run outside of Jenkins to be managed. We do not recommend using this project type.
Multi-configuration projects are useful when you have a large number of very
similar jobs. They allow all of the configuration of a standard freestyle
project, but they also allow a job to be built across a user-specified range
of options, e.g. platforms or compilers. In general a sub-item is created
for each combination of ranges; for example, if the compiler range was
gcc, clang and the operating system range was
ubuntu, centos then four
sub-items would be created.
Generally this type of project should be replaced with a Pipeline job, due to its additional flexibility.
Adding folders allows you to organise your build jobs into nested structures. For example you may find one folder per library or compiler makes it easier to understand and find your jobs. Jobs can be moved between folders after creation without the loss of history, so folders can be added as the number of jobs grows.
The Multibranch Pipeline is an extension of the base Pipeline job which handles the creation of subjobs based on branches in the code repository. For more details see the pipeline guide page.
Copy Existing item
The 'Copy Existing item' options allows you to copy the configuration of an
existing job. To specify another job in your folder, you need to use the syntax
foldername/jobname. In both the
foldername and the
jobname the item name should be used, rather than the display name.