繁体   English   中英

托管代理失败的 Azure DevOps 构建管道

[英]Azure DevOps build pipeline with hosted agent failing

我对 Azure 和 TFS 以及相关领域很陌生。 如果我混淆了这里的条款,请原谅。

我正在使用本地安装测试 Microsoft Team Foundation Server 的功能。 我不是服务器本身的管理员,我对里面的一个项目有管理员访问权限。

我在这个项目中有一个带有一些 python 代码的 git repo,我正在尝试为此设置 CI 构建管道。 我还手动配置了一个代理来运行这个构建管道。 目前,我正在配置我正在处理的 Windows 机器作为代理运行。 我能够将它设置为侦听作业,并且在从 TFS 服务器提交时它也会接收作业。 (我从 cmd.exe 窗口运行代理)但是,作为构建管道的一部分,即使是最简单的命令行任务,我也无法让它执行。

下面是where python的输出:

2019-08-27T14:41:15.1614046Z ##[section]Starting: Find python version
2019-08-27T14:41:15.1623937Z ==============================================================================
2019-08-27T14:41:15.1624042Z Task         : Command Line
2019-08-27T14:41:15.1624091Z Description  : Run a command line script using cmd.exe on Windows and bash on macOS and Linux.
2019-08-27T14:41:15.1624157Z Version      : 2.146.1
2019-08-27T14:41:15.1624203Z Author       : Microsoft Corporation
2019-08-27T14:41:15.1624258Z Help         : [More Information](https://go.microsoft.com/fwlink/?LinkID=613735)
2019-08-27T14:41:15.1625058Z ==============================================================================
2019-08-27T14:41:15.6151701Z Cannot invoke method. Method invocation is supported only on core types in this language mode.
2019-08-27T14:41:15.6151921Z At line:1 char:1
2019-08-27T14:41:15.6151968Z + . ([scriptblock]::Create('if (!$PSHOME) { $null = Get-Item -LiteralPa ...
2019-08-27T14:41:15.6152019Z + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-08-27T14:41:15.6152077Z     + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
2019-08-27T14:41:15.6152123Z     + FullyQualifiedErrorId : MethodInvocationNotSupportedInConstrainedLanguage
2019-08-27T14:41:15.6152156Z  
2019-08-27T14:41:17.7569608Z Cannot invoke method. Method invocation is supported only on core types in this language mode.
2019-08-27T14:41:17.7569833Z At line:1 char:740
2019-08-27T14:41:17.7570630Z + ... Continue' ; Invoke-VstsTaskScript -ScriptBlock ([scriptblock]::Create ...
2019-08-27T14:41:17.7571090Z +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-08-27T14:41:17.7572452Z     + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
2019-08-27T14:41:17.7574051Z     + FullyQualifiedErrorId : MethodInvocationNotSupportedInConstrainedLanguage
2019-08-27T14:41:17.7574178Z  
2019-08-27T14:41:17.8271008Z ##[error]Exit code 1 returned from process: file name 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe', arguments '-NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command ". ([scriptblock]::Create('if (!$PSHOME) { $null = Get-Item -LiteralPath ''variable:PSHOME'' } else { Import-Module -Name ([System.IO.Path]::Combine($PSHOME, ''Modules\Microsoft.PowerShell.Management\Microsoft.PowerShell.Management.psd1'')) ; Import-Module -Name ([System.IO.Path]::Combine($PSHOME, ''Modules\Microsoft.PowerShell.Utility\Microsoft.PowerShell.Utility.psd1'')) }')) 2>&1 | ForEach-Object { Write-Verbose $_.Exception.Message -Verbose } ; Import-Module -Name 'C:\TOOLS\agent\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce9\2.146.1\ps_modules\VstsTaskSdk\VstsTaskSdk.psd1' -ArgumentList @{ NonInteractive = $true } -ErrorAction Stop ; $VerbosePreference = 'SilentlyContinue' ; $DebugPreference = 'SilentlyContinue' ; Invoke-VstsTaskScript -ScriptBlock ([scriptblock]::Create('. ''C:\TOOLS\agent\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce9\2.146.1\cmdline.ps1'''))"'.
2019-08-27T14:41:17.8301183Z ##[section]Finishing: Find python version

当我在我的机器上以交互方式从命令行执行该命令时,该命令运行良好。

为什么在管道运行时会调用 PowerShell? 为什么这么长的命令来执行这么简单的事情?

预先感谢您提供的任何建议。

代理在幕后使用 PowerShell,看起来您的 IT 人员在阻止运行某些 PowerShell 脚本的计算机中设置了一些安全措施(也许只是从远程执行)。

尝试在您的 PowerShell 中运行它:

$ExecutionContext.SessionState.LanguageMode

我想你会得到这个输出:

ConstrainedLanguage

如果是,请尝试将其切换到FullLanguage

$ExecutionContext.SessionState.LanguageMode = "FullLanguage"

如果它没有帮助,可能它也被阻止了,因此您需要与将更改它的 IT 交谈或尝试更改注册表,如解释here或将环境变量__PSLockdownPolicy设置为0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM