如何在没有 .Net 编译器的情况下修改 TFS 生成自动化工作流,需要使用团队开发人员的语言编译器



我正在尝试为一个使用名为TeamDeveloper6的遗留语言开发的项目构建自动化。其中每个文件都需要编译为exe。在构建前任之前,还需要做一些过滤活动。有300个前任。

这个过程我可以做得很简单。Net实用程序,用于对所需文件进行筛选并调用TeamDeveloper编译器。

是否可以将其放入TFS构建工作流中?最好的方法是什么?

编写一个MSBuild项目,该项目调用所需工具的必要命令并将其签入。在TFS生成定义中,使用默认模板(首先),并将创建的MSBuild文件设置为"要生成的项目"。

通过这种方式,您可以在命令行上使用MSBuild在本地测试生成过程,并确定可能需要哪些命令行开关。可以在生成定义中设置命令行开关,或者如果需要进一步的控制,可以修改默认模板,将命令行开关直接注入MSBuild活动。

我建议这样做,因为这样你就不必创建任何自定义的工作流,并且可以避免在TFS中使用自定义的工作流活动(这是绝对支持的,但在我看来有点难以诊断/调试/维护/升级)。

理想情况下,您希望使用InvokeProcess活动来调用执行过滤和调用的可执行文件。另一种更复杂的方法是创建自定义活动,但这需要在构建服务器上安装二进制文件。

最新更新