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