IMO, "project" is a complete misnomer in Jenkins, because a "project" is 
something a human works on.
A "job" is something Jenkins executes.
A "project" has zero or more "jobs".
-Max


On 05/16/2012 07:30 AM, Stephen Connolly wrote:
It really starts to break down when you have....

* Freestyle project

* Maven 2 project

* Folder

* Update center

* Backup job

* Some random name corresponding to a template you have created

* Some random name corresponding to a template you have created

* Some random name corresponding to a template you have created

* External job

* Copy existing job

[Submit]

Which is what you start to see when you install the CloudBees Plugin
Gateway (to get the folders and backup to the cloud plugins that
CloudBees are giving away free as beer) or when you switch to
CloudBees Enterprise (for all our non-free plugins)

Which is why I think it might be better to just switch everything to
either "New Item" or "New..." and be done with it ;-)

Of course that could just be a personal bias ;-)

-Stephen

On 16 May 2012 15:10, Christoph Kutzinski<ku...@gmx.de>  wrote:
IMHO the average user either wouldn't understand these subtle differences 
anyway or if she would understand she probably wouldn't care.

So, I would like to see a single name for this in the UI.
E.g. I cannot see any significant difference between 'external job' and 
'external project' (just personal liking that job sounds better in that case), 
so both would work. Same for maven job or maven project.


Just my 2 cents.

Christoph




-------- Original-Nachricht --------
Datum: Wed, 16 May 2012 14:26:31 +0200
Von: Simon Wiest<simon.wi...@web.de>
An: jenkinsci-users@googlegroups.com
Betreff: Re: Is it called "Project" or is it called "Job"?

Hi bl0ck3r,

this puzzled me as well at the beginning, but there's actually quite
some logic to it ;O):

A project is a special case of a job, i.e. all projects are jobs, but
not all jobs are projects.

Cheers,
Simon.


The long story:

Perhaps it helps to extend to mentally the names to "*general purpose*
jobs" and "*software building* projects" (although the latter don't need
build software, they are tailored to this use case).

In the case of "new job", Jenkins can't not know yet, if the new job
will be of the project subtype. On the other hand, once you have chosen
to create a project, this is reflected as specific as possible in the UI
("Project Foo"). If you look at the precise wording on the "New Job"
page, you'll realize the subtle differences (e.g. "Build a free-style
software *project*" as opposed to "Monitor an external *job*").

An example of a job that is *not* a project is the lesser known
"external job" that receives  notifications from events that happen
outside Jenkins, but should be tracked inside Jenkins (e.g. system
restarts etc.). See
https://wiki.jenkins-ci.org/display/JENKINS/Monitoring+external+jobs for
more about this job type.

For the records, this is actual class model used by Jenkins internally
(extending sub-classes are indented below their super-class:

Job
    AbstractProject
      MatrixProject (a.k.a. "multi-configuration project")
      Project
        FreeStyleProject
        MatrixConfiguration (a single configuration of a matrix project)
    StubJob
    ViewJob
      ExternalJob

Only FreeStyleProject, MatrixProject, and ExternalJob are visible on the
"New Job" page.

So, how could we could improve the understanding of the difference
between "Job" and "Project" in the UI? Any suggestions?
--
bl0ck3r (15.05.2012 15:02):
The UI needs to be more consistent. In the main Jenkins menu, I can
create a "New Job" called Foo, but after it is created, the page is
titled "Project Foo". This is inconsistent and got me confused for a
couple of days as I was learning Jenkins.


Reply via email to