如何向应用程序清单中添加外部(打包的)服务结构服务

时间:2019-05-07 10:29:38

标签: azure-service-fabric

我们要提取一堆外部服务结构服务,这些服务被打包到通用包中。

要下载这些服务,我必须使用vsts cli-下载它们后,我可以在下载位置看到ServiceManifest.xmlCode / Config文件夹。我现在想将它们作为某种外部服务添加到清单中。

我应该如何修改ApplicationManifest.xml以便添加这些服务?

1 个答案:

答案 0 :(得分:0)

<ServiceManifestImport>的{​​{1}}节点内部,您应该添加对您希望在应用程序中拥有的每个服务的引用。

ApplicationManifest.xml

这里有两点要理解:

  1. 通常,<ServiceManifestImport> <ServiceManifestRef ServiceManifestName="ServicePkg" ServiceManifestVersion="1.0.0" /> <ConfigOverrides /> </ServiceManifestImport> 从设计角度ServiceManifest.xml包含单个服务的定义,描述了所谓的服务包。此服务包是ServiceManifest.xml中引用的东西。

  2. ApplicationManifest.xml属性的值是ServiceManifestName的名称。 ServiceManifest.xml名称是使用ServiceManifest.xml属性在其中定义的。同时,ServiceManifest/@Name属性定义相对于ServiceManifestNameApplicationManifest.xmlServiceManifest.xml和其他文件夹所在的Code位置的目录名称。

这是一个简单的例子

想象一下,您在Config目录中组装了一个程序包,并且想要使用在C:\MyPackage中具有Service1名称的外部服务。

  1. 您要做的第一件事就是将此服务添加到ServiceManifest.xml
    ApplicationManifest.xml
  2. 现在您将<ServiceManifestImport> <ServiceManifestRef ServiceManifestName="Service1" ServiceManifestVersion="1.0.0" /> <ConfigOverrides /> </ServiceManifestImport> 复制到ApplicationManifest.xml目录。
  3. 然后您创建一个C:\MyPackage目录,并将C:\MyPackage\Service1ServiceManifest.xml等复制到Code
  4. 为了确保一切正常,请执行PowerShell cmdlet C:\MyPackage\Service1

希望这会有所帮助。