[ANN] SSH Slaves plugin version 0.1 released

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

[ANN] SSH Slaves plugin version 0.1 released

stephenconnolly
This is an initial release for feedback and testing.

I do not think this is 100% ready for prime time yet.

The plugin adds a new way to start a slave... providing that the machine you want to start the slave on is a Linux/Unix machine!

It will start an SSH session to the machine as the user of your choice, copy the latest slave.jar, find a java that is at least 1.5, and launch the slave.jar.

TODO:
* look for a compatable java if the default java is not good enough
* stop resource leaks when Hudson reloads the plugin classloader
* implement checking to ensure that only one slave.jar is running in the one working directory
* implement checking to ensure that we don't clobber a slave.jar that is being used by a running slave (to possibly another hudson instance)
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

Aleksandar Kostadinov
Stephen,

interesting plug-in you're announcing. But knowing implementation
details better, do you think it can easily be modified to work over telnet?
We've never had issues running UNIX slaves with ssh but starting windows
slaves has always been an issue. Windows has built-in telnet server so I
think it would be rather convenient way to start slaves there.

Thanks,
Aleksandar

Stephen Connolly wrote, On 12/23/-28158 09:59 PM (EEST):

> This is an initial release for feedback and testing.
>
> I do not think this is 100% ready for prime time yet.
>
> The plugin adds a new way to start a slave... providing that the machine
> you want to start the slave on is a Linux/Unix machine!
>
> It will start an SSH session to the machine as the user of your choice,
> copy the latest slave.jar, find a java that is at least 1.5, and launch
> the slave.jar.
>
> TODO:
> * look for a compatable java if the default java is not good enough
> * stop resource leaks when Hudson reloads the plugin classloader
> * implement checking to ensure that only one slave.jar is running in the
> one working directory
> * implement checking to ensure that we don't clobber a slave.jar that is
> being used by a running slave (to possibly another hudson instance)

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

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

Kohsuke Kawaguchi
Administrator
Aleksandar Kostadinov wrote:
> Stephen,
>
> interesting plug-in you're announcing. But knowing implementation
> details better, do you think it can easily be modified to work over telnet?
> We've never had issues running UNIX slaves with ssh but starting windows
> slaves has always been an issue. Windows has built-in telnet server so I
> think it would be rather convenient way to start slaves there.

Doesn't Windows have its own hassle-free remote launch protocol, like
psexec? Or is it actually harder to set up?

>
> Thanks,
> Aleksandar
>
> Stephen Connolly wrote, On 12/23/-28158 09:59 PM (EEST):
>> This is an initial release for feedback and testing.
>>
>> I do not think this is 100% ready for prime time yet.
>>
>> The plugin adds a new way to start a slave... providing that the machine
>> you want to start the slave on is a Linux/Unix machine!
>>
>> It will start an SSH session to the machine as the user of your choice,
>> copy the latest slave.jar, find a java that is at least 1.5, and launch
>> the slave.jar.
>>
>> TODO:
>> * look for a compatable java if the default java is not good enough
>> * stop resource leaks when Hudson reloads the plugin classloader
>> * implement checking to ensure that only one slave.jar is running in the
>> one working directory
>> * implement checking to ensure that we don't clobber a slave.jar that is
>> being used by a running slave (to possibly another hudson instance)
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>

--
Kohsuke Kawaguchi
Sun Microsystems                   [hidden email]

smime.p7s (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

Tom Huybrechts
On Tue, Jun 10, 2008 at 6:49 PM, Kohsuke Kawaguchi
<[hidden email]> wrote:

> Aleksandar Kostadinov wrote:
>>
>> Stephen,
>>
>> interesting plug-in you're announcing. But knowing implementation
>> details better, do you think it can easily be modified to work over
>> telnet?
>> We've never had issues running UNIX slaves with ssh but starting windows
>> slaves has always been an issue. Windows has built-in telnet server so I
>> think it would be rather convenient way to start slaves there.
>
> Doesn't Windows have its own hassle-free remote launch protocol, like
> psexec? Or is it actually harder to set up?

I've had some problems with redirecting psexec output streams from java.
For the moment I'm using this: http://sourceforge.net/projects/rce/
It's open source so we could even include it into a plugin.
And it doesn't require any setup on the slave except having sharing enabled.

>
>>
>> Thanks,
>> Aleksandar
>>
>> Stephen Connolly wrote, On 12/23/-28158 09:59 PM (EEST):
>>>
>>> This is an initial release for feedback and testing.
>>>
>>> I do not think this is 100% ready for prime time yet.
>>>
>>> The plugin adds a new way to start a slave... providing that the machine
>>> you want to start the slave on is a Linux/Unix machine!
>>>
>>> It will start an SSH session to the machine as the user of your choice,
>>> copy the latest slave.jar, find a java that is at least 1.5, and launch
>>> the slave.jar.
>>>
>>> TODO:
>>> * look for a compatable java if the default java is not good enough
>>> * stop resource leaks when Hudson reloads the plugin classloader
>>> * implement checking to ensure that only one slave.jar is running in the
>>> one working directory
>>> * implement checking to ensure that we don't clobber a slave.jar that is
>>> being used by a running slave (to possibly another hudson instance)
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [hidden email]
>> For additional commands, e-mail: [hidden email]
>>
>>
>
>
> --
> Kohsuke Kawaguchi
> Sun Microsystems                   [hidden email]
>

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

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

stephenconnolly
Yeah that looks like it does exactly what's needed... and doubleplusgood it's cross platform, while psexec would only work if the master was running windows

On Thu, Jun 12, 2008 at 3:39 PM, Tom Huybrechts <[hidden email]> wrote:
On Tue, Jun 10, 2008 at 6:49 PM, Kohsuke Kawaguchi
<[hidden email]> wrote:
> Aleksandar Kostadinov wrote:
>>
>> Stephen,
>>
>> interesting plug-in you're announcing. But knowing implementation
>> details better, do you think it can easily be modified to work over
>> telnet?
>> We've never had issues running UNIX slaves with ssh but starting windows
>> slaves has always been an issue. Windows has built-in telnet server so I
>> think it would be rather convenient way to start slaves there.
>
> Doesn't Windows have its own hassle-free remote launch protocol, like
> psexec? Or is it actually harder to set up?

I've had some problems with redirecting psexec output streams from java.
For the moment I'm using this: http://sourceforge.net/projects/rce/
It's open source so we could even include it into a plugin.
And it doesn't require any setup on the slave except having sharing enabled.

>
>>
>> Thanks,
>> Aleksandar
>>
>> Stephen Connolly wrote, On 12/23/-28158 09:59 PM (EEST):
>>>
>>> This is an initial release for feedback and testing.
>>>
>>> I do not think this is 100% ready for prime time yet.
>>>
>>> The plugin adds a new way to start a slave... providing that the machine
>>> you want to start the slave on is a Linux/Unix machine!
>>>
>>> It will start an SSH session to the machine as the user of your choice,
>>> copy the latest slave.jar, find a java that is at least 1.5, and launch
>>> the slave.jar.
>>>
>>> TODO:
>>> * look for a compatable java if the default java is not good enough
>>> * stop resource leaks when Hudson reloads the plugin classloader
>>> * implement checking to ensure that only one slave.jar is running in the
>>> one working directory
>>> * implement checking to ensure that we don't clobber a slave.jar that is
>>> being used by a running slave (to possibly another hudson instance)
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [hidden email]
>> For additional commands, e-mail: [hidden email]
>>
>>
>
>
> --
> Kohsuke Kawaguchi
> Sun Microsystems                   [hidden email]
>

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


Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

stephenconnolly
Arse... looked like it was cross platform.... but it's not :-(

On Thu, Jun 12, 2008 at 4:14 PM, Stephen Connolly <[hidden email]> wrote:
Yeah that looks like it does exactly what's needed... and doubleplusgood it's cross platform, while psexec would only work if the master was running windows


On Thu, Jun 12, 2008 at 3:39 PM, Tom Huybrechts <[hidden email]> wrote:
On Tue, Jun 10, 2008 at 6:49 PM, Kohsuke Kawaguchi
<[hidden email]> wrote:
> Aleksandar Kostadinov wrote:
>>
>> Stephen,
>>
>> interesting plug-in you're announcing. But knowing implementation
>> details better, do you think it can easily be modified to work over
>> telnet?
>> We've never had issues running UNIX slaves with ssh but starting windows
>> slaves has always been an issue. Windows has built-in telnet server so I
>> think it would be rather convenient way to start slaves there.
>
> Doesn't Windows have its own hassle-free remote launch protocol, like
> psexec? Or is it actually harder to set up?

I've had some problems with redirecting psexec output streams from java.
For the moment I'm using this: http://sourceforge.net/projects/rce/
It's open source so we could even include it into a plugin.
And it doesn't require any setup on the slave except having sharing enabled.

>
>>
>> Thanks,
>> Aleksandar
>>
>> Stephen Connolly wrote, On 12/23/-28158 09:59 PM (EEST):
>>>
>>> This is an initial release for feedback and testing.
>>>
>>> I do not think this is 100% ready for prime time yet.
>>>
>>> The plugin adds a new way to start a slave... providing that the machine
>>> you want to start the slave on is a Linux/Unix machine!
>>>
>>> It will start an SSH session to the machine as the user of your choice,
>>> copy the latest slave.jar, find a java that is at least 1.5, and launch
>>> the slave.jar.
>>>
>>> TODO:
>>> * look for a compatable java if the default java is not good enough
>>> * stop resource leaks when Hudson reloads the plugin classloader
>>> * implement checking to ensure that only one slave.jar is running in the
>>> one working directory
>>> * implement checking to ensure that we don't clobber a slave.jar that is
>>> being used by a running slave (to possibly another hudson instance)
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [hidden email]
>> For additional commands, e-mail: [hidden email]
>>
>>
>
>
> --
> Kohsuke Kawaguchi
> Sun Microsystems                   [hidden email]
>

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



Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

stephenconnolly
This, http://eol.ovh.org/winexe/ looks like it could work for starting from a *nix master though

On Thu, Jun 12, 2008 at 4:15 PM, Stephen Connolly <[hidden email]> wrote:
Arse... looked like it was cross platform.... but it's not :-(


On Thu, Jun 12, 2008 at 4:14 PM, Stephen Connolly <[hidden email]> wrote:
Yeah that looks like it does exactly what's needed... and doubleplusgood it's cross platform, while psexec would only work if the master was running windows


On Thu, Jun 12, 2008 at 3:39 PM, Tom Huybrechts <[hidden email]> wrote:
On Tue, Jun 10, 2008 at 6:49 PM, Kohsuke Kawaguchi
<[hidden email]> wrote:
> Aleksandar Kostadinov wrote:
>>
>> Stephen,
>>
>> interesting plug-in you're announcing. But knowing implementation
>> details better, do you think it can easily be modified to work over
>> telnet?
>> We've never had issues running UNIX slaves with ssh but starting windows
>> slaves has always been an issue. Windows has built-in telnet server so I
>> think it would be rather convenient way to start slaves there.
>
> Doesn't Windows have its own hassle-free remote launch protocol, like
> psexec? Or is it actually harder to set up?

I've had some problems with redirecting psexec output streams from java.
For the moment I'm using this: http://sourceforge.net/projects/rce/
It's open source so we could even include it into a plugin.
And it doesn't require any setup on the slave except having sharing enabled.

>
>>
>> Thanks,
>> Aleksandar
>>
>> Stephen Connolly wrote, On 12/23/-28158 09:59 PM (EEST):
>>>
>>> This is an initial release for feedback and testing.
>>>
>>> I do not think this is 100% ready for prime time yet.
>>>
>>> The plugin adds a new way to start a slave... providing that the machine
>>> you want to start the slave on is a Linux/Unix machine!
>>>
>>> It will start an SSH session to the machine as the user of your choice,
>>> copy the latest slave.jar, find a java that is at least 1.5, and launch
>>> the slave.jar.
>>>
>>> TODO:
>>> * look for a compatable java if the default java is not good enough
>>> * stop resource leaks when Hudson reloads the plugin classloader
>>> * implement checking to ensure that only one slave.jar is running in the
>>> one working directory
>>> * implement checking to ensure that we don't clobber a slave.jar that is
>>> being used by a running slave (to possibly another hudson instance)
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [hidden email]
>> For additional commands, e-mail: [hidden email]
>>
>>
>
>
> --
> Kohsuke Kawaguchi
> Sun Microsystems                   [hidden email]
>

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




Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

Kohsuke Kawaguchi
Administrator
In reply to this post by stephenconnolly
Stephen Connolly wrote:
> Arse... looked like it was cross platform.... but it's not :-(

I don't think we need a cross-platform solution. On Unix, ssh works the
best.

--
Kohsuke Kawaguchi
Sun Microsystems                   [hidden email]

smime.p7s (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

Tom Huybrechts
On Thu, Jun 12, 2008 at 11:34 PM, Kohsuke Kawaguchi
<[hidden email]> wrote:
> Stephen Connolly wrote:
>>
>> Arse... looked like it was cross platform.... but it's not :-(
>
> I don't think we need a cross-platform solution. On Unix, ssh works the
> best.

Stephen is referring to launching Windows slaves from a Unix master right ?
Ssh doesn't help you there out of the box.

>
> --
> Kohsuke Kawaguchi
> Sun Microsystems                   [hidden email]
>

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

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] SSH Slaves plugin version 0.1 released

Kohsuke Kawaguchi
Administrator
Tom Huybrechts wrote:

> On Thu, Jun 12, 2008 at 11:34 PM, Kohsuke Kawaguchi
> <[hidden email]> wrote:
>> Stephen Connolly wrote:
>>>
>>> Arse... looked like it was cross platform.... but it's not :-(
>>
>> I don't think we need a cross-platform solution. On Unix, ssh works the
>> best.
>
> Stephen is referring to launching Windows slaves from a Unix master right ?
> Ssh doesn't help you there out of the box.
Ah, sorry, yes.

--
Kohsuke Kawaguchi
Sun Microsystems                   [hidden email]

smime.p7s (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

winexe (WAS: [ANN] SSH Slaves plugin version 0.1 released)

avalon-2
In reply to this post by stephenconnolly
Hi,
I've setup a pretty sane script chain using winexe. The only problem is that slave hangs at "channel started". It is the same using text mode. I'll investigate later on this one.

Any suggestions welcome.

Stephen Connolly-2 wrote
This, http://eol.ovh.org/winexe/ looks like it could work for starting from
a *nix master though
Reply | Threaded
Open this post in threaded view
|

Re: winexe (WAS: [ANN] SSH Slaves plugin version 0.1 released)

avalon-2
It seems that the problem is line buffering. Do you think it will be easy to have a new communications protocol to handle that?

I actually didn't prove the issue is line buffering but I just can't see anything else that can break the communication.

avalon wrote
Hi,
I've setup a pretty sane script chain using winexe. The only problem is that slave hangs at "channel started". It is the same using text mode. I'll investigate later on this one.

Any suggestions welcome.

Stephen Connolly-2 wrote
This, http://eol.ovh.org/winexe/ looks like it could work for starting from
a *nix master though