Octopus Deploy 部署未转换的配置文件

Octopus Deploy deploys non-transformed config files

我目前正在为我们团队的应用程序配置 Octopus Deploy。设置非常简单直观。

在部署期间,它正确执行 *.config 文件转换。 Web.config 被处理为在这些部署期间按预期使用 Web.Test.configWeb.Release.config 中的数据。但是,另一个配置文件仍然部署 - 在测试部署中,我将 Web.Release.config 推送到 Tentacle。

我可以在我的部署中编写一个简单的脚本步骤来删除它们,但我想知道是否有人知道防止这种情况发生的方法?

Octopus 默认部署只会对直接在包中并部署到目标环境机器的文件进行转换。 它不会自动删除转换,您可以通过 postDeploy.ps1 or use the File System - Clean Configuration Transforms 模板实现。

当我们部署时,我们使用生产构建的输出。在该输出中只有一个 web.config (msbuild 已经完成转换)。然后,当我们部署到测试(或生产以外的任何其他环境)时,我们使用 https://ctt.codeplex.com/ 手动进行转换。我认为这为您提供了最好的包(更少的文件),并且您可以将优化的生产代码部署到您的所有环境中。