【问题标题】:TFS2017 What determines the dotnet (core) build step versions available on perm?TFS2017 是什么决定了 perm 上可用的 dotnet(核心)构建步骤版本?
【发布时间】:2020-03-17 08:27:34
【问题描述】:

什么决定了 TFS2017 on prem 中可用的“.net core”构建步骤的版本? 我已经对 tfs 进行了最新的修补,在构建和 tfs 服务器上安装了 .net core 版本 2.2,但在 TFS 构建步骤中我只能看到 v0.* 和 v1.*。

编辑澄清:这是我感兴趣的构建步骤模板的版本,而不是服务器上的 sdk/framework/dotnet exe。

【问题讨论】:

  • 这不是 netcore 的版本,而是将调用 netcode-sdk 的任务的版本。尝试运行构建以查看任务是否获取 netcore2-sdk
  • 回答您的问题,“net core”的构建步骤版本与实际的 netcore-sdk 安装无关
  • 抱歉,澄清一下,我感兴趣的是构建步骤版本模板,而不是构建/tfs 服务器上的 dotnet 核心版本。我无法弄清楚是什么决定了可用的构建步骤的版本。对于像章鱼这样的第三方东西很容易 - 只需更新 tfs 上的扩展,宾果游戏新的最新构建步骤。对于这些我想不通。
  • 这只是您特定版本的 tfs 支持和交付的一组任务。新版本的 tfs 带来了新的任务。云托管变体 (AzureDevOps) 会自动更新这些。您也可以使用较新版本的任务更新 tfs 中的任务,但我不推荐这样做

标签: tfs .net-core tfsbuild


【解决方案1】:

任务是版本化的,管道中的每个任务都有一个版本选择器让您选择您想要的版本。并且您必须指定管道中使用的任务的主要版本。这有助于防止发布任务的新版本时出现问题。

任务通常向后兼容,但在某些情况下,当任务自动执行时,您可能会遇到不可预知的错误 更新了。

当发布新的次要版本(例如,1.2 到 1.3)时,您的 build 或 release 将自动使用新版本。但是,如果一个 新的主要版本发布(例如 2.0),您的构建或发布 将继续使用您指定的主要版本,直到您编辑 管道并手动更改为新的主要版本。构建 或发布日志将包括一个新的主要版本的警报 可用。

更多细节可以参考这个官方链接--Task versions

What determines the dotnet (core) build step versions available on perm 通常和你的 TFS 版本有关。新版本 TFS 默认包含新版本任务。这是有道理的,因为对于一些旧的 TFS 发布时,新版本的任务尚未发布或正在开发中。

例如,使用我的 Azure DevOps 2019 update1,您将能够选择此 .NET Core CLI 任务的版本 2(最新)。

如果你真的需要最新版本,也可以考虑打包任务DotNetCoreCLIV2自己上传。但我们无法保证在旧版本 TFS 上的兼容性,在某些情况下您可能会遇到不可预知的错误。

【讨论】:

  • 谢谢!这是一个很好的明确答案。我希望在这个阶段我不必在 2017 年以后更新 TFS,但随着我们进入 .Net Core 开发,越来越多地被旧任务版本卡住正在成为一个更大的问题。
  • @SamClayton 是的,您还应该获得在 Azure DevOps 中设计的多项新功能和新 UI。 .NET Core 3.0 也开始被广泛使用。强烈建议您根据您的情况升级到最新的 TFS 版本 Azure DevOps 2019。
  • 只要在构建服务器上安装了正确的 sdk,您应该能够使用 dotnet 任务运行任何版本的 dotnet core。使用的版本是您项目文件中指定的版本。
猜你喜欢
  • 2019-06-12
  • 1970-01-01
  • 2019-05-12
  • 2018-06-18
  • 2017-12-07
  • 2022-08-19
  • 2017-06-14
  • 1970-01-01
  • 2020-06-08
相关资源
最近更新 更多