Ошибка задачи TFS SSH на компьютере Windows

Я попытался подключить компьютер с Windows, который существует в другом домене, чем наш TFS 2018.3.

Я добавил задачу "SSH" и создал новую конечную точку SSH с IP-адресом, именем пользователя и паролем удаленного компьютера без личного ключа. Я настроил в удаленной машине доступ по SSH для этого имени пользователя и пароля.

В задаче SSH я настраиваю простую команду оболочки: ls,

Агент TFS успешно подключился к компьютеру, но потерпел неудачу с этой ошибкой:

Невозможно выполнить команду или оболочку на удаленной системе: не удалось выполнить процесс.

Полный журнал:

2019-08-15T13:22:54.1491966Z Trying to setup SSH connection to ********@myserverinanotherdomain:22

2019-08-15T13:22:54.4085564Z Successfully connected.

2019-08-15T13:22:54.8120684Z tr -d '\015' <"./sshscript_1565875374136" > "./sshscript_1565875374136._unix"

2019-08-15T13:22:54.8121422Z Unable to execute command or shell on remote system: Failed to Execute process.

2019-08-15T13:22:54.8121745Z

2019-08-15T13:22:54.8180230Z ##[error]Command tr -d '\015' <"./sshscript_1565875374136" > "./sshscript_1565875374136._unix" exited with code 4294967295.

Я думаю, потому что это машина Windows, и я пытаюсь выполнить сценарий оболочки. Если я буду устанавливать Git bash, например, это может помочь?

Задача SSh поддерживает только машины с Linux? если да, как я могу подключить машину, которая существует в другом домене?

1 ответ

SSH, являющийся протоколом связи, не зависит от ОС. Это не специфично для Linux. Но, похоже, есть ограничение на использование задачи SSH на компьютере с Windows / агенте сборки. Взгляните на этот похожий вопрос: не удается запустить bash-скрипт из windows, используя vsts.

Я не нашел документацию, в которой четко указано, что задача SSh не поддерживается на компьютере с Windows. Но я нашел задачу, которая также использует SSH- Копировать файлы поверх SSH. И согласно Q&A в официальной ссылке:

Поддерживается ли эта задача для целевых машин, работающих под управлением операционных систем, отличных от Linux?

Эта задача предназначена для целевых машин под управлением Linux.

  • Для копирования файлов на компьютер MacOS может использоваться эта задача, но аутентификация с паролем не поддерживается.
  • Для копирования файлов на компьютер с Windows рассмотрите возможность использования Windows Machine File Copy.

Вместо SSH. Вы должны иметь возможность использовать локальную учетную запись на сервере сборки и при вводе учетных данных. Учетная запись должна иметь тот же пароль, что и учетная запись в другом домене. В других работах убедитесь, что учетная запись сборки, запущенная на агенте сборки, может подключаться к другому домену.

Также убедитесь, что между доменами существуют доверительные отношения.

Другие вопросы по тегам