我正在使用在创建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?
答案 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