由于Test-ServiceFabricClusterConnection,发布到Service Fabric Cluster失败

时间:2016-09-21 19:46:21

标签: powershell-v3.0 azure-service-fabric

我正在使用在创建Service Fabric项目时生成的Deploy-FabricApplication.ps1脚本来部署我的应用程序。

部署到Service Fabric群集时,如果我首先使用Connect-ServiceFabricCluster连接到本地群集,则可以在本地部署。但是,我的构建服务器不运行本地群集实例,因此我无法首先连接到本地实例。当我与Connect-ServiceFabricCluster @ClusterConnectionParameters连接时,我获得了成功连接的数据。当它到达发布并运行Test-ServiceFabricClusterConnection命令时,我收到以下错误。

WARNING: Unable to Verify connection to Service Fabric cluster.
Test-ServiceFabricClusterConnection : Cluster connection instance is null
At C:\ProgramFiles\MicrosoftSDKs\ServiceFabric\Tools\PSModule\ServiceFabricSDK\Publish-NewServiceFabricApplication.ps1:129 char:16
+         [void](Test-ServiceFabricClusterConnection)
+                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ResourceUnavailable: (:) [Test-ServiceFabricClusterConnection], NullReferenceException
    + FullyQualifiedErrorId : GetClusterConnectionErrorId,Microsoft.ServiceFabric.Powershell.TestClusterConnection

我尝试从Publish-NewServiceFabricApplication.ps1模块中删除Test-ServiceFabricClusterConnection,但我得到了一组不同的错误。无论我在这一点上尝试过什么,如果我第一次连接到群集它可以工作,但如果我通过powershell脚本连接则不行。

更新!解决了 使用点源解决了这个问题:How do I deploy service fabric application from VSTS release pipeline?

3 个答案:

答案 0 :(得分:1)

在致电$global:clusterConnection = $clusterConnection或使用dot source notation致电Connect-ServiceFabricCluster之后设置Deploy-FabricApplication.ps1

Connect-ServiceFabricCluster的调用在本地Powershell范围内设置了一个$clusterConnection变量,该变量在调用其他范围时会丢失。有关更多信息,请参见this post

答案 1 :(得分:0)

请检查证书已正确安装在您的计算机上。我遇到了类似的问题,并安装了证书,它可以正常工作。还要确认商店位置正确设置为

StoreLocation =“ LocalMachine”

如果您在本地计算机上安装了证书,则将其设置为StoreLocation =“ CurrentUser”

答案 2 :(得分:0)

对我来说,它从 $clusterConnection = Connect-ServiceFabricCluster -ConnectionEndpoint $ClusterConnectionParameters.ConnectionEndpoint -ErrorAction Stop

Connect-ServiceFabricCluster -ConnectionEndpoint $ClusterConnectionParameters.ConnectionEndpoint -ErrorAction Stop