【问题标题】:Transform ASP.NET 5 json configuration files with Octopus Deploy使用 Octopus Deploy 转换 ASP.NET 5 json 配置文件
【发布时间】:2015-12-17 19:46:36
【问题描述】:

我正在使用 Octopus Deploy 根据本指南将 ASP.NET 5 网站部署到 Azure:https://gist.github.com/alfhenrik/ee08dbb1fb6e2bc7f772

我正在尝试找到一种方法来转换配置文件,但还没有找到任何优雅的解决方案。目前我最好的建议是在本地开发环境中使用带有配置的 appsettings.json 和 appsettings.Release.json,它是 appsettings.json 的精确副本,其中所有值都是章鱼变量,如 #{myVariableName}。然后在使用 Octopus 进行部署时,我们有一个预部署脚本,将 appsettings.json 替换为 appsettings.Release.json,然后在 appsettings.json 上运行变量替换。

有更好的建议吗?

【问题讨论】:

    标签: octopus-deploy asp.net-core


    【解决方案1】:

    我为解决这个问题所做的是使用 xml 配置而不是 json。我将所有配置从我的 appsettings.json 和 appsettings.Release.json 移动到 Web.config 和 Web.Release.config 并在 Startup.cs 中添加了 .AddXmlFile("Web.config")。这样,我可以在 Octopus Deploy 中使用内置的配置转换,同时等待它们开始正确支持 ASP.NET 5 应用程序。

    2016-02-02 更新: 从 v3.3 开始,Octopus Deploy 现已添加对 .json 配置文件的支持。见https://octopus.com/blog/octopus-deploy-3.3#ASPNETCoreJSON

    【讨论】:

      【解决方案2】:

      八达通现在支持此功能,

      config transformation for json config files

      【讨论】:

        【解决方案3】:

        目前 octopus deploy 不支持 ASP.NET 5,因为它有大量更改。

        但是 Octopus Deploy 的团队正在努力实现目标。

        更多信息请访问此链接:http://help.octopusdeploy.com/discussions/questions/6083-deploying-aspnet-vnext-web-application

        【讨论】:

        • 没错!这就是为什么我链接到 Henrik 在 Octopus 团队中编写的要点,他在其中描述了一种通过做一些 hack 来使 ASP.NET 5 应用程序部署工作的方法。您提到的链接有来自同一个 Henrik 的答案 :) Octopus Deploy 尚不支持部署 ASP.NET 5 应用程序,但可以使其工作:)
        【解决方案4】:

        henningst 的建议是正确的。但是如果有人像我一样被困在以前的章鱼版本中。您可以通过运行在框中设置环境变量的自定义 powershell 脚本来解决它

        sleep 50
        $EnvName = $OctopusParameters["ASPNETCORE_ENVIRONMENT"]
        [Environment]::SetEnvironmentVariable("ASPNETCORE_ENVIRONMENT", $EnvName, "Machine")
        

        只需添加一个名为“ASPNETCORE_ENVIRONMENT”的变量,其中包含您应该部署到的环境的名称,例如:QA

        例如:appSettings.QA.Json -> 添加带有值 QA 的变量 ASPNETCORE_ENVIRONMENT

        然后依靠正常:

        .AddJsonFile($"appsettings.{env.EnvironmentName}.json", true)
        

        在框中进行变换

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-06-15
          • 1970-01-01
          • 2018-01-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多