【发布时间】:2020-09-25 23:35:17
【问题描述】:
我们正在使用 Azure DevOps 部署我们的 ASP.NET Core REST API。我们目前将设置存储在 appSettings.json 中。我们有多种环境,例如 QA、PROD、DEV 等。根据最佳实践,我们知道我们根本不能在源代码控制中检查任何 appsettings 文件。这似乎是有道理的,我们正在进入秘密管理器。
但是,我们很想看看是否有一种方法可以从 appSettings.production.json 中获取我们的设置(我们有很多),例如并以某种方式将它们转换为 Azure DevOps 需要的格式? -设置“价值”似乎是格式。因为我们有复杂的 JSON 节点,所以我们现在别无选择,只能费力地采用我们的 JSON 并将其扁平化为带有 __ 分隔符的一系列设置,以便它们可以在我们的代码中正常工作。
我们完全放弃这种方法了吗?有一个更好的方法吗?我们经常需要在一个文件中管理我们的 Prod JSON 设置,并且希望自动化工作流以从 JSON 生成符合 DevOps 的设置。
有人有什么想法吗?很想听听其他人如何使用 Azure DevOps 将他们的微服务、功能等部署到 QA、Staging、Prod 环境。
谢谢!
【问题讨论】:
-
让我感到困惑的是,您为什么或在与部署相关的应用程序设置中添加了什么。这部分真的让我很困惑。如果您可以在此处放置一个示例 YAML 文件以查看您在做什么以及如何操作,您的问题会好得多。我希望你没有使用经典的 devops 编辑器。
-
如果你真的把 devops 的东西放在应用程序设置中,那么,是的,你在那里犯了一个错误。
-
我认为您可能没有正确解释我的问题。我没有将 DevOps 设置放在应用程序设置中。我希望通过 DevOps 部署我的应用程序设置。已经有一种使用 DevOps 管道参数添加这些的方法,它只是采用一种非常不同的格式。我想知道是否有更好的方法。谢谢!
-
它是真的,这个问题的框架确实让我感到困惑。两种解决方案 - 天蓝色密钥库和秘密变量,以对您的情况更有意义的为准。这两个解决方案是如此明显,而您当前的 devops 部署听起来如此复杂 - 所以您显然是 YAML 的高级用户,我没想到,这就是我们在谈论的 :) 我的坏人,我的坏人 :)跨度>
-
完全没有问题。我很高兴收到反馈!再次感谢!
标签: azure azure-devops