2010-08-06 3 views
0

Где hudson CI получить пользователя для запуска cmd.exe? Я пытаюсь запустить и остановить некоторые удаленные службы на разных подчиненных устройствах, и нужны специальные учетные данные, отличные от того, что использует хадсон. Я не могу найти место, чтобы переопределить пользователя. Я пытался запустить сервер как различные пользователи, но он ничего не меняет. Любые другие идеи?Hudson cmd.exe работает как

ответ

0

У нас была аналогичная проблема, и я прибегал к использованию PsExec. К моим преимуществам, наши машины существуют в отдельной локальной сети, в пределах 2 брандмауэров, поэтому я был в порядке с незашифрованными паролями, плавающими вокруг. Я также изучил SSH с Putty, который, казалось, работал, но не был прост.

Если кто-то может помочь с одной строкой runas, это может сработать.

2

Поскольку вы хотите запускать и останавливать службы на удаленном компьютере, вам необходимо войти в систему с этими учетными данными на удаленном компьютере, так как я не нашел способ запустить и остановить службу на удаленной машине.

Существуют разные способы сделать это. Вы можете создать ведомое устройство, которое выполняется на удаленных компьютерах с правильными учетными данными. Вы даже можете создать более одного подчиненного устройства для одного и того же компьютера без каких-либо проблем, чем вы можете использовать разные учетные данные для одного и того же компьютера. Затем они могут запустить команду net stop и net start.

Вы также можете использовать SSH plugin. Это позволяет настраивать скрипты ssh и post-build ssh. Вам просто нужен сервер ssh на машине Windows. Пароль для подключения будет храниться в зашифрованном виде.

Используйте инструмент commad line. До сих пор я не нашел средство Windows на борту, чтобы иметь скриптовый вход на удаленную машину. Я бы использовал plink для этой задачи. plink - это скриптовая версия шпатлевки. Шпатлевка поддерживает различные типы соединений. Таким образом, вы также можете использовать сборку в службе telnet (не рекомендуется, поскольку telnet не шифрует соединение). Недостатком является то, что у вас будет пароль, незашифрованный в конфигурации задания.

0

Вы не говорите, как ваши подчиненные подключены к Хадсону, но я предполагаю, что это через сервис «hudson slave», поскольку это, вероятно, самый популярный способ подключения ведомых устройств Windows.

Если это так, CMD.EXE запускается с теми же правами, что и пользователь, выполняющий службу. Это может быть проверено:
1. запустить services.msc
2. двойного щелчка Гудзона-рабыня служба
3. Перейдите на вкладку Вход

По умолчанию, ведомая служба работает как «LocalSystem», который является самой мощной учетной записью в системе. Он должен иметь возможность делать все, что вам нужно. (т. е. услуги старт/стоп)

Смежные вопросы