如何在用于部署的服务结构应用程序包中包含发布配置文件和应用程序参数?
How to include Publish profile and application parameters in a package of service fabric application for deployment?
我正在尝试打包服务结构应用程序,当我这样做时,我有应用程序清单和服务清单文件,但我也想包括应用程序参数和发布配置文件。
不确定您使用的 CI 系统,但通常需要三个部分才能正常工作
- 打包您的应用程序输出 + 清单。这基本上是您在
sfproj
上执行 MSBuild
得到的包位置输出。在下面,我假设 CI 构建工件输出转到 '$(build.artifactstagingdirectory)'
/t:Package /p:PackageLocation=$(build.artifactstagingdirectory)\applicationpackage
- 在您的 CI 构建输出中包含一个步骤,以 将参数和配置文件复制到另一个文件夹 - 例如
$(build.artifactstagingdirectory)\projectartifacts
**\PublishProfiles\*.xml
**\ApplicationParameters\*.xml
- 部署您的应用程序。为此,请查看在您首次创建
.sfproj
Service Fabric 项目时由 Visual Studio 创建的 Deploy-FabricApplication.ps1
脚本。当您将应用程序部署到本地开发集群时,Visual Studio 也会使用它,并且您基本上必须执行相同的步骤才能部署到另一个集群。
假设您的 CI 工件输出存在于 "$(SF_PackagePath)"
中的简单示例
Deploy-FabricApplication.ps1 -ApplicationPackagePath "$(SF_PackagePath)\applicationpackage" -PublishProfileFile "$(SF_PackagePath)\projectartifacts\Local.1Node.xml"
我正在尝试打包服务结构应用程序,当我这样做时,我有应用程序清单和服务清单文件,但我也想包括应用程序参数和发布配置文件。
不确定您使用的 CI 系统,但通常需要三个部分才能正常工作
- 打包您的应用程序输出 + 清单。这基本上是您在
sfproj
上执行MSBuild
得到的包位置输出。在下面,我假设 CI 构建工件输出转到 '$(build.artifactstagingdirectory)'
/t:Package /p:PackageLocation=$(build.artifactstagingdirectory)\applicationpackage
- 在您的 CI 构建输出中包含一个步骤,以 将参数和配置文件复制到另一个文件夹 - 例如
$(build.artifactstagingdirectory)\projectartifacts
**\PublishProfiles\*.xml
**\ApplicationParameters\*.xml
- 部署您的应用程序。为此,请查看在您首次创建
.sfproj
Service Fabric 项目时由 Visual Studio 创建的Deploy-FabricApplication.ps1
脚本。当您将应用程序部署到本地开发集群时,Visual Studio 也会使用它,并且您基本上必须执行相同的步骤才能部署到另一个集群。
假设您的 CI 工件输出存在于 "$(SF_PackagePath)"
Deploy-FabricApplication.ps1 -ApplicationPackagePath "$(SF_PackagePath)\applicationpackage" -PublishProfileFile "$(SF_PackagePath)\projectartifacts\Local.1Node.xml"