Quantcast

Jobs to install tools: how to run on all nodes

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Jobs to install tools: how to run on all nodes

Dewey Sasser
I'm trying to find a very simple way to maintain all of my build tools
across all appropriate build nodes in my hudson cluster.

I have several Hudson jobs which exist to deploy build tools on my
various build nodes.  Right now I have them run in a matrix
configuration and select "individual nodes" on which to run.  The
problem is that when I add a new node (which I did just this morning) I
have to go to all of my infrastructure builds and individually configure
them to add the new node.

What I'd really, really like is to be able to select a *label* and have
it run on all nodes matching that label.  This is somewhat different
that the normal behavior which runs a job on *any* node with the given
label.

(Even better I could select multiple labels and have it combine them --
I'd like an "and" operation).

Does anyone have a better solution to this problem or any other thoughts
on it?

Thanks,

--
Dewey

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

AW: Jobs to install tools: how to run on all nodes

Jan.Materne
>I'm trying to find a very simple way to maintain all of my build tools
>across all appropriate build nodes in my hudson cluster.
>
>I have several Hudson jobs which exist to deploy build tools on my
>various build nodes.  Right now I have them run in a matrix
>configuration and select "individual nodes" on which to run.  The
>problem is that when I add a new node (which I did just this morning) I
>have to go to all of my infrastructure builds and individually
>configure
>them to add the new node.
>
>What I'd really, really like is to be able to select a *label* and have
>it run on all nodes matching that label.  This is somewhat different
>that the normal behavior which runs a job on *any* node with the given
>label.
>
>(Even better I could select multiple labels and have it combine them --
>I'd like an "and" operation).
>
>Does anyone have a better solution to this problem or any
>other thoughts
>on it?


Another scenario would running a test on multiple platforms.

But at the moment one job runs on one node (simultaneously). And you
want
to change that. This has the drawback/challenge ;) that you have to
merge all
their output.
Maybe a new job type would help
- can run on multiple nodes
- instead of merging their outputs it shows a tree
  (job - node - output)


Jan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Jobs to install tools: how to run on all nodes

Kohsuke Kawaguchi
Administrator
In reply to this post by Dewey Sasser
Isn't it better off if we let you run some script when a slave becomes
online, rather than trying to force the matrix job into doing this,
which is really different from what it's supposed to do?

We have necessary extension point (ComputerListener) that gets
notified when a slave comes online. You also got a TaskListener to
send the output from your script to.

2009/5/27 Dewey Sasser <[hidden email]>:

> I'm trying to find a very simple way to maintain all of my build tools
> across all appropriate build nodes in my hudson cluster.
>
> I have several Hudson jobs which exist to deploy build tools on my
> various build nodes.  Right now I have them run in a matrix
> configuration and select "individual nodes" on which to run.  The
> problem is that when I add a new node (which I did just this morning) I
> have to go to all of my infrastructure builds and individually configure
> them to add the new node.
>
> What I'd really, really like is to be able to select a *label* and have
> it run on all nodes matching that label.  This is somewhat different
> that the normal behavior which runs a job on *any* node with the given
> label.
>
> (Even better I could select multiple labels and have it combine them --
> I'd like an "and" operation).
>
> Does anyone have a better solution to this problem or any other thoughts
> on it?
>
> Thanks,
>
> --
> Dewey
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>



--
Kohsuke Kawaguchi

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Jobs to install tools: how to run on all nodes

Dewey Sasser
Kohsuke Kawaguchi wrote:
> Isn't it better off if we let you run some script when a slave becomes
> online, rather than trying to force the matrix job into doing this,
> which is really different from what it's supposed to do?
>
> We have necessary extension point (ComputerListener) that gets
> notified when a slave comes online. You also got a TaskListener to
> send the output from your script to.
>  

That's a good idea -- my nightly execution is a hack.  However, I still
need to be able to filter it by labels.

Actually, I think the ideal would be extend the auto-install magic you
have for JDK and ANT (which I just used today) for the first time.  If I
could specify an arbitrary list of tool dependencies rather than just
JDK and ANT version and Hudson would just take care of it before a build
that would be most excellent.

How difficult would it be to extend that to an arbitrary list of tools?

(And on that note:  allowing checkout from SCM to the tool installation
would be a cool feature, too.)

--
Dewey

> 2009/5/27 Dewey Sasser <[hidden email]>:
>  
>> I'm trying to find a very simple way to maintain all of my build tools
>> across all appropriate build nodes in my hudson cluster.
>>
>> I have several Hudson jobs which exist to deploy build tools on my
>> various build nodes.  Right now I have them run in a matrix
>> configuration and select "individual nodes" on which to run.  The
>> problem is that when I add a new node (which I did just this morning) I
>> have to go to all of my infrastructure builds and individually configure
>> them to add the new node.
>>
>> What I'd really, really like is to be able to select a *label* and have
>> it run on all nodes matching that label.  This is somewhat different
>> that the normal behavior which runs a job on *any* node with the given
>> label.
>>
>> (Even better I could select multiple labels and have it combine them --
>> I'd like an "and" operation).
>>
>> Does anyone have a better solution to this problem or any other thoughts
>> on it?
>>    


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Loading...