Usage of putty in command line from Hudson

Posted by kij on Super User See other posts from Super User or by kij
Published on 2010-06-03T14:26:08Z Indexed on 2010/06/03 17:45 UTC
Read the original article Hit count: 438

Filed under:
|

Hi,

I'm trying to use putty in command line from an hudson job.

The command is the following one:

putty -ssh -2 -P 22 USERNAME@SERVER_ADDR -pw PASS -m command.txt

Where 'command.txt' is a shell script to execute in the server through SSH.

If i launch this command from the Window command prompt, it works, the shell script is executed on the server machine. If i launch a build of the hudson job configured with this batch command, it doesn't work. The build is running... and running... and running.. without doing anything, and i have to stop it manually.

So my question is:

Is it possible to launch an external programm (i.e. putty) from an hudson job ?

ps: i tried SSH plugin but... not a really good plugin (pre/post build, fail status of the commands launched not caught by hudson, etc.)

Thanks in advance for your help.

Best regards.

kij

EDIT: These are the build logs:

[workspace] $ cmd /c call C:\WINDOWS\TEMP\hudson7429256014041663539.bat

C:\Hudson\jobs\Artifact deployer\workspace>putty -ssh -2 -P 22 USER@SERV_ADD -pw PASS -m com.txt 
Le build a été annulé
Finished: ABORTED

And the Hudson.err.log file at the same time (after a stop):

3 juin 2010 18:27:28 hudson.model.Run run
INFO: Artifact deployer #6 aborted
java.lang.InterruptedException
    at java.lang.ProcessImpl.waitFor(Native Method)
    at hudson.Proc$LocalProc.join(Proc.java:179)
    at hudson.Launcher$ProcStarter.join(Launcher.java:278)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:83)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:58)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
    at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:601)
    at hudson.model.Build$RunnerImpl.build(Build.java:174)
    at hudson.model.Build$RunnerImpl.doRun(Build.java:138)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:416)
    at hudson.model.Run.run(Run.java:1241)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:124)

My shell script only write "hello" in a "hello.txt" file on the server, and nothing is done.

© Super User or respective owner

Usage of putty in command line from Hudson

Posted by kij on Stack Overflow See other posts from Stack Overflow or by kij
Published on 2010-06-03T14:26:08Z Indexed on 2010/06/03 16:34 UTC
Read the original article Hit count: 438

Filed under:
|

Hi,

I'm trying to use putty in command line from an hudson job.

The command is the following one:

putty -ssh -2 -P 22 USERNAME@SERVER_ADDR -pw PASS -m command.txt

Where 'command.txt' is a shell script to execute in the server through SSH.

If i launch this command from the Window command prompt, it works, the shell script is executed on the server machine. If i launch a build of the hudson job configured with this batch command, it doesn't work. The build is running... and running... and running.. without doing anything, and i have to stop it manually.

So my question is:

Is it possible to launch an external programm (i.e. putty) from an hudson job ?

ps: i tried SSH plugin but... not a really good plugin (pre/post build, fail status of the commands launched not caught by hudson, etc.)

Thanks in advance for your help.

Best regards.

kij

EDIT: These are the build logs:

[workspace] $ cmd /c call C:\WINDOWS\TEMP\hudson7429256014041663539.bat

C:\Hudson\jobs\Artifact deployer\workspace>putty -ssh -2 -P 22 USER@SERV_ADD -pw PASS -m com.txt 
Le build a été annulé
Finished: ABORTED

And the Hudson.err.log file at the same time (after a stop):

3 juin 2010 18:27:28 hudson.model.Run run
INFO: Artifact deployer #6 aborted
java.lang.InterruptedException
    at java.lang.ProcessImpl.waitFor(Native Method)
    at hudson.Proc$LocalProc.join(Proc.java:179)
    at hudson.Launcher$ProcStarter.join(Launcher.java:278)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:83)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:58)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
    at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:601)
    at hudson.model.Build$RunnerImpl.build(Build.java:174)
    at hudson.model.Build$RunnerImpl.doRun(Build.java:138)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:416)
    at hudson.model.Run.run(Run.java:1241)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:124)

My shell script only write "hello" in a "hello.txt" file on the server, and nothing is done.

© Stack Overflow or respective owner

Related posts about hudson

Related posts about putty