我的任务是更新公司过时的构建过程。这一切都是在批处理和 perl 脚本中完成的。当前的构建过程是:
- 通过 Web 界面安排构建。
- 构建服务器将构建过程从队列中移除。
- 构建服务器从 TFS 源代码控制中检出所有文件。
- 构建服务器运行几个代码注入脚本,在构建之前修改源代码。
- 构建服务器更新版本并签署代码。
- 构建服务器使用 Visual Studio 编译项目。
- 完成后,构建服务器压缩输出并将其放在网络共享位置。
真正困难的部分是代码注入脚本。它们是 3 个修改大量代码的 perl 脚本。它们的设计方式也非常依赖机器。(所以我不能在没有大量修改的情况下将它们放在构建过程中)
我的最终目标是能够在本地开发机器上运行构建过程,并在 TFS 服务器上运行 CI。
在我的搜索中,似乎没有办法在本地机器上模拟 TFS 构建。那么我唯一的选择是在我的 cs.proj 文件中使用构建前/构建后的命令行脚本吗?或者有没有更好的方法在本地机器上进行复杂的构建并在 TFS 上运行相同的构建?
我已经看到在本地机器上使用 TFS 构建定义,但这对我来说似乎有点 hacky。如果没有更好的解决方案,我想这不会是一个可怕的解决方案。