将 TFS2017 任务更新到最新版本
Posted
技术标签:
【中文标题】将 TFS2017 任务更新到最新版本【英文标题】:Update TFS2017 task to latest version 【发布时间】:2020-06-03 22:34:27 【问题描述】:我正在使用 VSTS 任务构建以在远程机器上运行 powershell 脚本:
我目前在本地使用 TFS2017,这是该任务的第 1 版。 github 上有一个版本 3: https://github.com/Microsoft/azure-pipelines-tasks/tree/master/Tasks/PowerShellOnTargetMachinesV3
我遇到了这个任务失败的问题,我在其他地方读到这个版本已经修复了我的问题,所以如果可能的话我想更新它。 我尝试了几种方法来做到这一点,但我无法弄清楚我应该做什么。你会认为 TFS 中会有一个更新按钮! 嗯,有,但它要求您提供一个 .VISX 文件。 GIT 中的 repo 没有。
我已尝试运行其他帖子中的步骤: How to update the built-in Microsoft task library in TFS 2017? 但运行命令“npm run package -- --version”不会生成 VISX。
我试过跑步:
npm run package --PowerShellOnTargetMachinesV3 --version 3.1.3
响应输出:
5.6.0
我不知道该怎么办!
我看到另一个帖子说我需要使用 tfs-cli? 我很困惑。
感谢任何帮助!
【问题讨论】:
版本 3 随附 TFS 2019 OOB。所以就像帕特里克在下面提到的,如果你在 2017 年想要它,你必须自己打包和部署它。问题是我不确定你可以升级它。它没有显示在已安装的任务中(因为它是内置的),因此您将无法升级。也许来自 tfx 命令行,但现在您正在升级内部 MS 任务,我不确定当您稍后尝试升级到 2018 或 2019 时它将如何发挥作用。您的错误是什么,也许有办法尝试升级。 谢谢@PatrickLu-MSFT - 我现在正在尝试解决这个问题。不过因为是在TFS2019更新的,而且我打算很快升级到那个,我可能就等着升级吧。 【参考方案1】:由于您在本地部署 TFS,因此任务版本不会自动更新。您需要手动安装“目标机器上的 PowerShell”任务版本 3.0
您只需要下载源代码并将其打包为扩展程序,最后上传并安装您的扩展程序。更新了一些步骤:
获取打包工具(tfx-cli)
您可以从命令行使用 npm(Node.js 的一个组件)安装或更新 TFS 跨平台命令行界面 (tfx-cli)。
npm i -g tfx-cli
将您的扩展程序打包到 .vsix 文件中
tfx extension create --manifest-globs vss-extension.json
更多详情请参考官方教程:Package, publish extensions。
【讨论】:
以上是关于将 TFS2017 任务更新到最新版本的主要内容,如果未能解决你的问题,请参考以下文章
2017年TFS - VS 2017 15.5更新后默认为MSBuild 14。需要MSBuild 15回来
Azure DevOps 自动将多个版本更新为最新发布的任务组版本