Дженкинс не будет запускать Start-Job с параметром Credential

Я передаю учетные данные сценарию через инжектор env (обратите внимание, у меня это работает с Invoke-Command) и пытаюсь запустить Start-Job, но Дженкинсу это не нравится:

$user = $ENV:user
$pass = $ENV:pass

write-output (cat env:username)
write-output (cat env:user)
write-output (cat env:pass)

$pass  = $pass | ConvertTo-SecureString -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential -ArgumentList ($user), $pass

Start-Job -Credential $cred -ScriptBlock {'test'}

write-output (get-job | Receive-Job)
get-job | remove-job

Это ошибка, которую я получаю (подтвержденное имя пользователя и пароль верны, когда я запускаю этот скрипт из консоли с теми же кредитами, он работает)

Started by user ME

[EnvInject] - Loading node environment variables.
Building in workspace C:\Program Files (x86)\Jenkins\jobs\myjob\workspace
[workspace] $ powershell.exe -NonInteractive -ExecutionPolicy ByPass "& 'C:\Windows\TEMP\hudson1723222179976241861.ps1'"
MYJENKINSSRV$
correctdomain\correctuser
correctPassword

Id     Name            PSJobTypeName   State         HasMoreData     Location  
--     ----            -------------   -----         -----------     --------  
1      Job1            BackgroundJob   Failed        False           localhost 
[localhost] An error occurred while starting the background process. Error 
reported: Access is denied.
    + CategoryInfo          : OpenError: (localhost:String) [], PSRemotingTran 
   sportException
    + FullyQualifiedErrorId : -2147467259,PSSessionStateBroken


Finished: SUCCESS

person red888    schedule 12.09.2016    source источник


Ответы (1)


у меня иногда были проблемы с учетными данными с PowerShell, я обычно могу исправить это, используя это:

$username = Username
$password = Password

$cred = New-Object -TypeName System.Management.Automation.PSCredential ($username, $password)
$Credentials = Get-Credential $cred

В основном ввод учетных данных в Get-credentials, а затем использование их для учетных данных.

person Tommy Bråthen    schedule 16.06.2017