Я пытаюсь использовать PuTTY в командной строке из задания Хадсона .
Команда следующая:
putty -ssh -2 -P 22 USERNAME@SERVER_ADDR -pw PASS -m command.txt
Где 'command.txt' - это сценарий оболочки, который выполняется на сервере через SSH.
Если я запускаю эту команду из командной строки Windows, она работает. Сценарий оболочки выполняется на сервере.
Если я запускаю сборку задания Hudson, настроенную с помощью этой пакетной команды, она не работает. Сборка запущена ... и работает ... и работает .. ничего не делая, и я должен остановить это вручную.
Можно ли запустить внешнюю программу (то есть PuTTY) из задания Hudson?
PS: я попробовал плагин SSH, но ... не очень хороший плагин (сборка до / после, состояние сбоя команд, запущенных не пойманными Хадсоном и т.д.)
Это журналы сборки:
[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
И файл Hudson.err.log одновременно (после остановки):
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)
Мой сценарий оболочки пишет "hello" только в файле «hello.txt» на сервере, и ничего не делается.