【发布时间】:2017-12-29 17:21:41
【问题描述】:
我正在使用 VSTS 2017 发布管理和构建一次部署多策略。我的项目是一个 dotnet core-webproject。首先,我使用dotnet 恢复/构建/测试/发布我的项目,然后发布我的工件(一个 zip)。
现在我想将具有不同配置的这个构建部署到不同的环境。通过“常规” dotnet,我使用 WinRM Web 应用程序管理和 parameters.xml 来添加我的环境特定配置。如下例:
但我使用dotnet publish 创建的包是一个 zip,而不是 msdeploy-package。
如何替换配置(appsettings.json)?
如何将其部署到我的 IIS?
我已经尝试过的:
首先我运行了dotnet publish,但没有Zip Published Projects-选项。这使得我可以轻松地在appsettings.json 中进行更改,但需要我使用复制文件-操作来进行部署。这有 IIS 锁定文件的缺点,这反过来又需要我编写使 IIS 脱机/联机的 PS 脚本。
我只想创建一个包,它可以部署到多个环境并具有不同的配置。我怎样才能实现它?
【问题讨论】:
-
Azure Key Vault 怎么样?符合您的要求吗?
-
@starain-MSFT - 我敢肯定它会很好用。但不幸的是,我无法在当前项目中使用任何云服务。而且我们也没有本地 Azure。
-
您也可以加密敏感信息并在 appsettings.json 中使用,然后在您的代码中解密。
标签: asp.net iis azure-pipelines azure-pipelines-build-task azure-pipelines-release-pipeline