1

我正在尝试在我的管道中使用“文件转换”任务在部署期间修改我的 web.config 文件中的一些值。

我创建的任务如下:

在此处输入图像描述

在管道中,在变量内部,我设置了要在 XML 文件中替换的键和值。

一切似乎都很好,但是,当我检查日志时,我看到了

在此处输入图像描述

因此,该文件被简单地跳过并且转换不起作用。

我试图在 web.config 文件中修改的变量在 XML 文件中具有以下路径

  <aspNetCore>
   <environmentVariables>
     <environmentVariable  name="x" value="y" />
    </environmentVariables>
   </aspNetCore>
 </configuration>

我多次阅读文档,但不清楚我是否做错了什么。

拜托,你能提供一些我需要检查以使其工作的建议吗?

谢谢

4

2 回答 2

0

根据有关XML变量替换applicationSettings的文档:变量替换仅对配置文件的, appSettings, connectionStrings, 和configSections元素生效。它不适用于您的environmentVariable元素。appSettings当我更改元素的值时,它对我来说效果很好。

请参阅文档中有关文件转换的示例。

于 2021-02-19T06:52:51.440 回答
0

我在回答我自己的问题。

根据我收到的评论,我找到的解决方案如下:

1-在部署后的管道中使用替换令牌任务(https://github.com/qetza/vsts-replacetokens-task#readme)。我还删除了那个“文件转换”,因为它不能满足我的需要。2-在配置中,我将根文件夹指向已部署的应用程序,没有 Zip 文件,正如另一个问题(Azure Dev ops replace tokens replace tokens per environment in release pipeline)3-在 web.config 文件中,我使用令牌前缀和后缀,如建议 "#{token}# 4- 将变量添加到变量组

部署后,我检查它是否工作正常。

于 2021-02-19T17:14:27.263 回答