在哪里可以下载Microsoft.TeamFoundation.DistributedTask.Task.Deployment.dll的最新版本以在Azure DevOps上发布?
答案 0 :(得分:0)
Microsoft-hosted agents会定期更新,以确保将最新且适用的软件映像应用于代理。
如果要使用最新版本的软件在DevOps上运行相关的管道任务,则可以在所使用的代理上安装最新的软件。
如果您使用的代理是私有代理,则需要在代理计算机上手动安装或升级所需的所有软件。通过从Internet下载最新的软件包或使用相关命令来安装/升级软件。
有关详细信息,您可以参考此case。
答案 1 :(得分:0)
为使其他SO用户在检查此票证时可以清楚地了解有关此问题的更多详细信息,我添加了与该票证相关的以下票证:
SO论坛:Register-Environment Failing
DC论坛:Where to download latest versions of deployment utilities for azure pipeline tasks?
当您使用需要/导入AzureFileCopy V1.*
文件的任务(例如Microsoft.TeamFoundation.DistributedTask.Task.Deployment.dll
)时,无论您使用的代理是托管代理还是私有代理,其版本始终为<任务的“强”>“最新” 版本,因为这些dll文件全部存在,具体取决于任务。
根据您在DC论坛ticket中共享的内容:
我怀疑其中有一个较新的版本 的注册环境,因为我的PowerShell版本 模块,以下行无法声明我缺少参数, 专门是“ taskContext”。
由于Microsoft.TeamFoundation.DistributedTask.Task.Deployment.dll
文件的配置而导致的错误。我们没有在其中定义参数taskContext
。
要对其进行检查和验证,可以在私人代理中执行PowerShellOnTargetMachines v2.*
任务,然后在dll
的路径中找到~\_work\_tasks\PowerShellOnTargetMachines_3b5693d4-5777-4fee-862a-bd2b7a374c68\2.0.7\DeploymentUtilities
文件。而且,您可以看到其版本为16.0.0.0
。
然后您可以使用反编译工具(这里使用的是 Reflector )来反编译此dll
文件。
您可以看到,在RegisterEnvironmentCmdlet
的脚本块中,没有定义参数taskContext
。
使用PowerShellOnTargetMachines v2.*
任务时,受支持的Register-Environment
的参数仅包括EnvironmentName
,EnvironmentSpecification
,UserName
,Password
,{{ 1}},WinRmProtocol
,TestCertificate
,ResourceFilter
,ProjectName
。
对于参数TagsList
,它是仅在taskContext
中使用的参数(请参见v1.* source code),在v1.*
中不支持。在v1。*中,v2.*
用于taskContext
cmdlet,在Get-VssConnection
中不再使用。这就是为什么您在v2.*
任务中遇到错误消息的原因。