分布式团队的项目工厂复制



我的组织正在部署Artifactory,供美国和印度的开发团队使用。目前,印度的团队经历了长时间的延迟,因为他们正在解析来自美国服务器的依赖项;我想通过使用 Artifactory 复制在印度镜像存储库来改善这一点。

复制文档明确指出"避免复制循环",即 A -> B 和 B -> A。这基本上意味着你可以建立一个链,链中的第一个服务器实际上是"主服务器",包应该发布到该链上以复制到所有其他服务器。我们将使用美国服务器作为主服务器。

鉴于此,我们如何配置存储库和/或开发人员工作站(用于 NPM 和 NuGet),以便印度的开发人员可以从印度的服务器解析其依赖项,从而缩短开发时间,但仍将其工件发布到美国的服务器,以便复制正常工作?是否将工具(npm/nuget)配置为从一个位置拉取并推送到另一个位置?或者是否可以如上所述将虚拟存储库配置为本地拉取和远程推送,以便对开发人员有效透明?

所以你需要做的是这样才能让它工作:

在美国创建了以下存储库:

Nuget-Local

Nuget-India-Local

nuget-virtual --> 将两个 nuget 存储库添加到该虚拟存储库,并将 nuget-local 设置为默认部署存储库。 这是您提供给开发人员用于解析和部署的存储库。

npm-local

NPM-印度-本地

npm-virtual --> 将两个 npm 存储库添加到该虚拟存储库,并将 npm-local 设置为默认部署存储库。 这是您提供给开发人员用于解析和部署的存储库。

在印度创建了以下存储库:

Nuget-Local

Nuget-USA-Local

nuget-virtual --> 将两个 nuget 存储库添加到该虚拟存储库,并将 nuget-local 设置为默认部署存储库。 这是您提供给开发人员用于解析和部署的存储库。

npm-local

NPM-美国-本地

npm-virtual --> 将两个 npm 存储库添加到该虚拟存储库,并将 npm-local 设置为默认部署存储库。 这是您提供给开发人员用于解析和部署的存储库。

复制配置:

美国:

nuget-local -->将推送复制(本地到本地)设置为印度的 nuget-usa-local 存储库(我也建议在事件基础复制上)

npm-local -->将推送复制(本地到本地)设置为印度的 npm-usa-local 存储库(我也建议在事件基础复制上)

印度:

nuget-local -->将推送复制(本地到本地)设置为印度的 nuget-india-local 存储库(我也建议在事件基础复制上)

npm-local -->将推送复制(本地到本地)设置为印度的 npm-india-local 存储库(我也建议在事件基础复制上)

这样,您可以避免双向限制,并且您的团队将在本地实例中拥有工件。

相关维基链接:

推送复制

最新更新