如何将 OnPrem Azure DevOps Server 与云端集成?

How to integrate OnPrem Azure DevOps Server with the cloud one?

我的公司拥有 Azure DevOps 在线版本,我们拥有所有项目和存储库。我们无法为存储库配置 CI/CD,因为我们的内部服务器网络无法访问互联网。

为了解决这个问题,我们构建了一个可以访问 Internet 和内部网络的新服务器。在新服务器上,我们安装并配置了 Azure DevOps Server 2019。我们不想将我们的存储库从云版本迁移到在线版本。

我正在尝试 link 将 OnPrem 回购到云回购,但它没有用。我在云版本上发布了一个 PAT,并将其作为服务连接添加到 OnPrem 版本的管道下,但我仍然无法看到 link 云存储库。

我可以将存储库从云端克隆到 OnPrem 服务器,但不会获得最新代码,因为正在检查云存储库中的代码

任何人都可以指导我如何link他们两个,拜托。

谢谢!!!

我不认为有一种有意义的方式来集成 Azure DevOps Services 和 Azure DevOps Server,因为它们本质上是相同的产品。我假设(但不知道)您希望将 Azure DevOps Services 集成到本地构建和部署中,因为您声明要将存储库保留在 Azure DevOps Services 中。因此,从本质上讲,您希望 运行 在本地环境中构建和部署组代理。

查看代理文档,尤其是通信部分:

https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/agents?view=azure-devops

或者这个旧博客post,交流部分源自:

https://devblogs.microsoft.com/devops/deploying-to-on-premises-environments-with-visual-studio-team-services-or-team-foundation-server/

理想的解决方案可能是您 运行 在对 Internet 开放的服务器中自托管生成代理,并在 Azure DevOps 服务中为它们配置代理池。对于部署,您需要使用部署组并将部署组代理安装到目标服务器,它们只需要出站 443 访问权限即可与 Azure DevOps 服务通信。

如果那不可能,您必须将部署代理安装到构建机器,然后它会看到您的其他本地服务器,但这是一个相当不令人满意的解决方案,因为您要么必须依赖 WinRm 功能用于部署,或者在您的构建服务器和其他本地服务器之间暴露太多网络。