2016-07-31 63 views
5

当我尝试我的服务织物的应用程序发布到Azure的集群,我得到了以下错误消息:操作超时发布服务面料应用到Azure的

3>Copy-ServiceFabricApplicationPackage : Operation timed out. 
3>At C:\Program Files\Microsoft SDKs\Service 
3>Fabric\Tools\PSModule\ServiceFabricSDK\Publish-NewServiceFabricApplication.ps1:230 char:9 
3>+   Copy-ServiceFabricApplicationPackage -ApplicationPackagePath ... 
3>+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
3> + CategoryInfo   : OperationTimeout: (:) [Copy-ServiceFabricApplicationPackage], TimeoutException 
3> + FullyQualifiedErrorId : CopyApplicationPackageErrorId,Microsoft.ServiceFabric.Powershell.CopyApplicationPackage 
3> 
3>Finished executing script 'Deploy-FabricApplication.ps1'. 
3>Time elapsed: 00:12:45.2589165 

Apperently有一个硬编码10分钟超时在发布脚本,你可以在这里阅读:https://github.com/Azure/service-fabric-issues/issues/10

这个超时将在一个upcomming版本中被删除,但同时我的选择是什么?有没有办法通过服务发布我的应用程序服务?

欢迎任何建议!

回答

4

我已经通过让一台运行在天蓝色的虚拟机解决了这个问题。我已经安装了Visual Studio 2015社区和服务结构SDK。

然后,我使用Visual Studio Online来托管我的代码。我在本地进行构建和测试,当我很高兴时,将视频工作室联机,然后将RDP加载到我的构建机器上,然后从那里进行抽取,构建和部署。

我已经更进一步创建构建和部署PowerShell脚本,所以我不需要运行Visual Studio。

+0

我得到它的工作!谢谢 –

1

此问题已在Service Fabric SDK的2.5.216版中解决。

在发布配置模式,您现在可以:

  • 压缩包,以加快转移
  • 超时时间设置为一个值大于10分钟

添加以下line to the PublishProfiles\Cloud.xml file to enable compression and change the timeout from 10 minutes to 60 minutes:

<CopyPackageParameters CopyPackageTimeoutSec="3600" CompressPackage="true" /> 
0

我遵循了Andrew Shepherd的建议。编辑位于<MyServiceFabricApp>\Scripts\Deploy-FabricApplication.ps1 PowerShell的部署文件,并改变了$ CopyPackageTimeoutSec变量3600的代码段如下所示:

Param 
(
.... 

[int] 
$CopyPackageTimeoutSec = 3600 
) 
... 
相关问题