用Azure DevOps发布管道变量替换parameters.xml或setParams.xml

时间:2020-04-16 15:16:51

标签: iis azure-devops azure-pipelines-release-pipeline msdeploy azure-pipelines-release-task

我有一个自定义配置文件,其中包含在发布时用Release Pipeline变量替换的参数。配置文件中的值替换有效。如果绑定了setParams.xml,则文件包含此值;如果未绑定,则包含参数定义中的默认值。现在的问题是,我只能从管道中的配置值中获取原始值,而不能获取解析值。

parameters.xml

<parameters>
    <parameter name="ParameterName" defaultValue="default" description="desc">
        <parameterEntry kind="XmlFile" scope="file.config" match="/xpath/@expression" />
    </parameter>    
</parameters>

setParams.xml(两种表示法都无效)

<parameters>
    <setParameter name="ParameterName" value="$(Pipeline_Variable)" />
</parameters>

<parameters>
    <setParameter name="ParameterName" value="__Pipeline_Variable__" />
</parameters>

如何使用parameters.xml和setParams.xml将Pipeline_Variable的参数替换为配置的值?我想避免将Azure任务中的每个参数设置为其他控制台参数。

1 个答案:

答案 0 :(得分:2)

如果要替换文件中的Pipeline_Variable,则应检查token replace extension。您只需要根据在任务中设置的内容正确格式化文件中的令牌即可。

token replace example