【问题标题】:Converting TFS2012 XAML MSBuild build definitions to TFS2017 MSBuild definition将 TFS2012 XAML MSBuild 构建定义转换为 TFS2017 MSBuild 定义
【发布时间】:2018-01-22 18:05:26
【问题描述】:

我们最近将 TFS2012 迁移/升级到了 TFS2017。在 TFS2017 中,XAML MSBuild 定义已被折旧,但仍然可以使用。我们计划明年升级到 TFS2018,大约需要转换。 300 个 XAML 生成定义为新的 TFS MSBuild 引擎格式。不幸的是,我们已经停用了旧的 TFS 2012 平台和 XAML 编辑器。有没有人完成这些转换或从头开始创建新的构建定义的手动过程?是否有我在 TFS2017 中没有看到的转换或克隆工具?我搜索了这个问题的所有 TFS 标签,但没有找到。我们有一年的时间来转换 300 个构建定义,我不想等到最后一刻。感谢任何反馈。

【问题讨论】:

    标签: tfsbuild


    【解决方案1】:

    对于基于 Web 的跨平台构建系统——vNext 构建,这是我们在 TFS2018 中支持的唯一模型。 TFS 2018 不支持 XAML 构建。我们鼓励您迁移您的 XAML 版本。如果您尚未准备好迁移并需要继续使用 XAML 构建,则不应升级到 TFS 2018。

    当您升级到 TFS 2018 时:

    • 如果您的团队项目集合中有任何 XAML 构建数据,您将收到有关删除 XAML 构建功能的警告。
    • 在 TFS 2018 中,您将能够查看已完成的 XAML 构建,但无法将新构建加入队列。
    • TFS 2018 中没有新版本的 XAML 构建控制器或代理,您无法配置旧版本的 XAML 构建
      使用 TFS 2018 的控制器或代理。

    但是,对于从 XAML 迁移到 vNext,没有通用的自动化方法可以做到这一点。这些系统非常不同,您真的只需要创建新的构建定义来满足您的需求。对于进行大量自定义(例如编写自定义工作流任务)的人来说,这将是真正的工作。好消息是,较新的系统有一系列易于使用的任务——“在盒子里”和在市场上都可以买到。

    以下是一些关于迁移旧 XAML 和创建新 vNext 构建定义的文档:

    【讨论】:

    • Patrick,感谢您非常彻底的回复。您的链接对于开始使用新的 TFS 2017 构建非常有帮助,并且在不支持现有 XAML 构建方面共享 TFS 2018 的提示。再次感谢。
    • 仅供参考,TFS 2018 Update 2 恢复了 XAML 构建... DevOps Server (TFS 2019) 似乎已将其关闭。
    【解决方案2】:

    这两个构建系统根本不同。无法自动将 XAML 构建定义转换为较新的构建系统。

    如果您只是使用现有的 XAML 构建模板,则新构建系统中的内置模板将产生大致相同的行为。

    【讨论】:

    • 丹尼尔,谢谢你的回答。经过更多研究,您是绝对正确的。我将不得不手动转换我的所有构建,但我确实发现一旦我创建了一个新的 TFS 2017 构建定义,我就可以克隆并创建一个模板,然后更容易创建其他构建。再次感谢。
    猜你喜欢
    • 2014-12-24
    • 1970-01-01
    • 2016-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-20
    • 2017-06-28
    • 1970-01-01
    相关资源
    最近更新 更多