MSBuild/TFS与Artifactory:优化。net生态系统中的构建自动化和持续集成
构建自动化和持续集成系统已经成为软件开发中的最佳实践。现在有各种各样的工具和产品可以满足许多不同的开hth华体会最新官方网站发平台,但是在Microsoft . net生态系统中开发时使用的事实上的标准是MSBuild和Team Foundation Server。
为了补充对NuGet包的支持,Artifactory通过MSBuild Artifactory Plugin提供了与这些工具的紧密集成。通过这个插件,您可以使用Artifactory来解析构建的依赖项,并将构件部署到本地构建存储库。
本文介绍了通过Artifactory运行MSBuild/TFS构建的一些好处。
Artifactory是开发人员或构建服务器与外部资源(如NuGet Gallery)之间的中介。2022世界杯阿根廷预选赛赛程它通过在本地缓存远程工件,为您提供对它们的快速和一致的访问远程存储库。一个典型的项目可能依赖于来自外部资源的数十甚至数百个工件。2022世界杯阿根廷预选赛赛程为了让服务器构建这些项目,所有远程工件必须对MSBuild环境可用。下载所有这些必需的构件可能会在网络上产生千兆字节的数据流量,这会花费大量的时间来延迟构建过程。通过在本地缓存远程构件,构建过程产生的网络连接要少得多,因此要快得多。

远程存储库
远程存储库充当在远程站点(如NuGet Gallery)上管理的存储库的缓存代理。根据控制缓存和代理行为的各种配置参数,在远程存储库中存储和更新构件。
对远程工件的可靠访问
由于Artifactory在您的本地网络上维护远程工件的本地缓存,因此您的构建独立于外部网络问题,并且如果远程资源出现故障也不会受到影响。构建所需的任何工件都可以从本地缓存(即远程存储库)中获得。即使在远程资源完全不存在的极端情况下,以前下载的任何工件也可以随时从缓存中获得。
完全可复制的构建
通过Artifactory在MSBuild/TFS生态系统中运行构建的另一大优势是Artifactory生成的详尽的构建信息。该信息与构建一起上传到本地存储库,包括特定的工件版本、依赖项、系统属性、环境变量、用户信息、时间戳等。有了这些信息,就很容易在任何时候忠实地再现构建,并且使用内置的“Diff”工具,您可以比较构建,从而确切地知道从一个版本到另一个版本引入了哪些更改。当试图追踪特定版本中报告的错误时,这些功能是无价的。

总结
通过Artifactory在MSBuild/TFS持续集成生态系统中运行构建,您可以克服网络和远程存储库可靠性带来的挑战,并享受完全可复制构建的好处。考虑到现代自动化系统可能每天运行几次构建,这将显著提高生产率。由于Artifactory对它所管理的二进制类型是不可知的,因此它可以优化构建自动化和持续集成,几乎适用于目前常用的每一种打包格式。
