首页 文章

Azure Webjobs app.config发布转换

提问于
浏览
1

我有一个webjob和一个webapp(两个单独的项目),我想为所有环境构建一个工件,并在发布步骤中进行转换而不是构建,因为我必须为每个环境创建一个工件 . 所以我为每个环境创建两个单独的工件(一个用于webapp,一个用于webjob),并在发布期间将xml转换应用到应用服务,现在一切正常,除了webjob的转换文件放在根目录中webapp,这不是我打算做的 . 我想将文件放置为 app_data\jobs\continous\myjob\myjob.exe.config

我已经看到了缓慢的cheeta和CTT变换,但这些超出了这个问题的范围,因为它们只对构建进行转换 .

enter image description here

2 回答

  • 0

    您可以使用Kudu api运行命令来复制或删除文件 .

    有关如何在构建/重新调用期间调用kudu api的更多信息,请参阅:How to access Kudu in Azure using power shell script

  • 1

    您应该在构建期间进行转换,并且您的转换应该作为构建中的标记而不是实际目标值发生 . 然后在部署中,您可以将令牌值替换为实际的目标环境值 . 这是打包和部署任何应用程序类型的正确方法 .

    步骤应该是

    • 在构建中使用转换标记化配置(使用此extension task

    • 将标记化配置包作为构建输出

    • 在部署时将目标值应用于标记(使用替换标记任务自带marketplace extension,它通过自动映射名称将已定义配置的值替换为释放变量值 . 换句话说,标记应该是参数名称)

    Here is an example done on a windows service . 但它适用于webjobs(已经测试过),这是正确的解决方案 .

相关问题