Я новичок в использовании PowerShell для автоматизации. Я хочу подключиться к машине по ssh и запустить на ней git pull. Это работает, когда я делаю это вручную через PowerShell, но не когда я автоматизирую это с помощью кода. Что у меня есть:
$Password = "mypsw"
$User = "myusername"
$ComputerName = "computername"
$secpasswd = ConvertTo-SecureString $Password -AsPlainText -Force
$Credentials = New-Object System.Management.Automation.PSCredential($User, $secpasswd)
$SessionID = New-SSHSession -ComputerName $ComputerName -Credential $Credentials
#$result = Invoke-SSHCommand -Index $sessionid.sessionid -Command "ls"
$result.Output # this one works as expected, returns the list of folders and files
$result = Invoke-SSHCommand -Index $sessionid.sessionid -Command "git pull"
$result.Output # this doesn't return anything
Если я не сохраню значение $ result, я получу
Host : [myhost]
Output : {}
ExitStatus : 128
который указывает на сообщение об ошибке. Однако я никогда не смогу отладить его, если точно не знаю, что выводит консоль. Так что, думаю, у меня здесь две проблемы.
1) Как получить реальный вывод удаленной консоли в моей оболочке
2) Как заставить работать git pull
И общий вопрос:
Подходит ли PowerShell для автоматизации этих задач, или мне следует использовать что-то другое? Спасибо