【发布时间】:2015-08-13 01:28:35
【问题描述】:
我正在将一个测试应用程序部署到 AppHarbor,并且我正在尝试让 AppHarbor 在部署时更新 ElephantSQL 插件的配置变量。
这些问题确实帮助解决了我的问题:
我的插件配置变量 - 键:ELEPHANTSQL_URL
我的自定义配置变量 - 键:foo 值:bar
现在查看 AppHarbor documentation 我所要做的就是将 appsetting 设置为与上面的键具有相同的名称。
这是我的 web.config:
<connectionStrings>
<add name="ELEPHANTSQL_URL" connectionString="Server=localhost;Database=foo;User Id=bar;Password=baz;" providerName="Npgsql" />
</connectionStrings>
<appSettings>
<add key="ELEPHANTSQL_URL" value="dev"/>
<add key="foo" value="baz"/>
</appSettings>
这是我的 web.release.config(已设置为 Build Action: Content)
<connectionStrings>
<add name="ELEPHANTSQL_URL" connectionString="release" providerName="Npgsql" xdt:Transform="Replace" />
</connectionStrings>
<appSettings>
<add key="ELEPHANTSQL_URL" value="release" xdt:Transform="Replace" />
<add key="foo" value="release" xdt:Transform="Replace" />
</appSettings>
我希望在 web.config 中看到发布值,但是当我下载构建源时,我会继续看到 dev 值。我读到的所有内容都说 appharbor 部署了发布配置并执行了转换,但我无法让它工作。
在构建日志中,没有提到转换,我不确定这是否正常(见下文)。
时间讯息
2015 年 8 月 12 日晚上 9:18 收到通知,正在排队构建
2015 年 8 月 12 日晚上 9:19 下载源
2015 年 8 月 12 日晚上 9:19 在 0.48 秒内下载源代码
2015 年 8 月 12 日晚上 9:19 开始 NuGet 包还原
8/12/15 9:19 PM NuGet 包还原完成显示日志 2015 年 8 月 12 日晚上 9:19 开始构建
2015 年 8 月 12 日晚上 9:19 0 个警告
2015 年 8 月 12 日晚上 9:19 构建在 3.9 秒内完成 显示日志 2015 年 8 月 12 日晚上 9:19 开始网站预编译
2015 年 8 月 12 日晚上 9:19 预编译在 11.24 秒内完成
2015 年 8 月 12 日晚上 9:19 开始测试
2015 年 8 月 12 日晚上 9:19 测试在 1.94 秒内完成
2015 年 8 月 12 日晚上 9:20 部署构建
2015 年 8 月 12 日晚上 9:20 检索到网站根目录 显示日志 2015 年 8 月 12 日晚上 9:20 构建成功部署
这是构建下载中的 web.config:
<connectionStrings>
<add name="ELEPHANTSQL_URL" connectionString="Server=localhost;Database=foo;User Id=bar;Password=baz;" providerName="Npgsql" />
</connectionStrings>
<appSettings>
<add key="ELEPHANTSQL_URL" value="dev" />
<add key="foo" value="baz" />
</appSettings>
我不确定我错过了什么。
想法?
【问题讨论】:
标签: c# .net web-config appharbor web.config-transform