Команда Powershell работает вручную, но не работает при выполнении в Jenkins

У меня странный сценарий, когда моя команда работает в PowerShell вручную, но не выполняется в плагине Jenkins PowerShell. Я новичок в PowerShell и Jenkins, и я думаю, что есть правило, которое мне не хватает. Я искал повсюду здесь и в сети, но мне не удалось найти решение.

Я создал задание, которое выполняет сценарий PowerShell, который открывает файл RDP на моем рабочем столе с помощью проекта freestyle. Он работает должным образом при выполнении в Powershell, но в Jenkins сборка выполняется успешно, но не открывается RDP.

Вот сценарий:

Start-Process "$env:windir\system32\mstsc.exe" -ArgumentList "RDP File /h:900 /w:1600" -WindowStyle Minimized

Я использую Windows Server 2016.

Вот что я пробовал:

  1. По умолчанию Jenkins использует 32-разрядную оболочку PowerShell, поэтому я вручную использовал 64-разрядную версию, но это не сработало.
  2. Я убедился, что для Get-ExecutionPolicy установлено значение RemoteSigned на LocalMachine.
  3. Запустите сценарий с помощью пакетной команды Windows
  4. Я попытался открыть блокнот, но он тоже не работает.

Это действительно поведение плагина PowerShell? Есть ли какие-то моменты, которые мне не хватает? Пожалуйста, помогите мне с этим.


person misconfigured    schedule 11.06.2020    source источник


Ответы (1)


Кому-нибудь это может понадобиться. Мне удалось выполнить RDP через плагин Jenkins PowerShell.

Что я сделал, так это зашел в Jenkins Window Service> Вкладка «Вход в систему»> Выберите «Эта учетная запись» и введите учетные данные своей учетной записи.

Я подозреваю, что это проблема безопасности. Дженкинс по умолчанию использует учетную запись «SYSTEM», у которой недостаточно прав.

person misconfigured    schedule 16.06.2020