首页 > 解决方案 > 使用 Bamboo 将 app.config 中的值替换为竹变量

问题描述

我正在 Bamboo 上构建和准备可部署的工件。我想将竹子中设置的变量自动注入到应用程序配置中。

{
  "IsEncrypted": false,
  "Values": {
    "EMAIL_QUEUE_DEV": "${bamboo.some.variable1}",
    "EmailFrom_DEV": "${bamboo.some.variable2}"
    }
}

我希望将 ${bamboo.some.variable1} 和 ${bamboo.some.variable2} 替换为等效的竹变量值。

标签: variablesbamboo

解决方案


我处理这个问题的方法是使用脚本或命令来运行可以处理文件查找和替换的可执行文件。为此,您需要设置某种占位符文本以关闭:

对于 Windows,您可以使用regexreplace。例子:

C:\Web.Config\rxrepl.exe ${bamboo.workingDirectory}/app.config -a --no-backup -s "email_queue_palceholder" -r "${bamboo.some.variable1}"

对于跨平台支持,您可以使用 Bamboo 中的perl脚本。为此,将 perl 可执行文件设置为 Bamboo 中的可执行命令,然后为任务类型选择命令。脚本看起来像这样:

-p "-i.bak" -e "s/\"EMAIL_QUEUE_DEV\": \"e_mail_queue_placeholder\"}\"\,/\"EMAIL_QUEUE_DEV\": \"${bamboo.some.variable1}\"/g" app.config


推荐阅读