根据以下文档,我在 Visual Studio Team Services 中为 Service Fabric 应用程序配置了 CI 构建:https ://azure.microsoft.com/en-us/documentation/articles/service-fabric-set-up-continuous -一体化
但是,我并没有让我的 CI 构建执行发布,而是只执行构建和打包任务,并将所有与 Service Fabric 相关的输出(例如 pkg 文件夹、脚本、发布配置文件和应用程序参数)包含在下拉列表中。通过这种方式,我可以将它传递给新的发布管道(基于代理的发布)来执行我的服务结构应用程序的实际部署。
在我的发布定义中,我有一个 Azure Powershell 任务,它使用一个 ARM 端点(配置了适当的服务主体)。
当我将我的应用程序部署到现有的 Service Fabric 集群时,我使用默认的 Deploy-FabricApplication cmdlet 传递 pkg 文件夹和配置了与现有集群的连接的发布配置文件。
发布失败并显示错误消息“集群连接实例为空”。我不明白为什么?
做一些调试我发现: Deploy-FabricApplication cmdlet 执行 Connect-ServiceFabricCluster cmdlet 很好,但是一旦 Publish-NewServiceFabricApplication cmdlet 接管执行,集群连接就会丢失。
我希望使用服务结构 cmdlet 可以实现这种情况,但我无法弄清楚如何在部署期间保持集群连接打开。
更新:文档的链接不再引用 Service Fabric PowerShell 脚本,因此不再记录此问题的先决条件。这篇文章现在指的是 VSTS 构建和发布任务,它比我尝试使用的 powershell cmdlet 更受欢迎。