FileTransform@1 - 文件转换 v1 任务

使用此任务将令牌替换为 XML 或 JSON 配置文件中的变量值。

语法

# File transform v1
# Replace tokens with variable values in XML or JSON configuration files.
- task: FileTransform@1
  inputs:
    folderPath: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #enableXmlTransform: false # boolean. XML transformation. Default: false.
    #xmlTransformationRules: '-transform **\*.Release.config -xml **\*.config' # string. Optional. Use when enableXmlTransform == true. Transformation rules. Default: -transform **\*.Release.config -xml **\*.config.
  # Variable Substitution
    #fileType: # 'xml' | 'json'. File format. 
    #targetFiles: # string. Optional. Use when fileType = xml || fileType = json. Target files.
# File transform v1
# Replace tokens with variable values in XML or JSON configuration files.
- task: FileTransform@1
  inputs:
    folderPath: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #enableXmlTransform: false # boolean. XML transformation. Default: false.
    #xmlTransformationRules: # string. Optional. Use when enableXmlTransform == true. Transformation rules. 
  # Variable Substitution
    #fileType: # 'xml' | 'json'. File format. 
    #targetFiles: # string. Optional. Use when fileType = xml || fileType = json. Target files.

输入

folderPath - 包或文件夹
string. 必需。 默认值:$(System.DefaultWorkingDirectory)/**/*.zip

包或文件夹的文件路径。

变量为 “生成 ”和 “发布”。 支持通配符。

例如,$(System.DefaultWorkingDirectory)/**/*.zip


enableXmlTransform - XML 转换
boolean. 默认值:false

配置转换将在变量替换之前运行。

XML 转换仅支持 Windows 平台。


xmlTransformationRules - 转换规则
string. 可选。 在 时 enableXmlTransform == true使用 。 默认值:-transform **\*.Release.config -xml **\*.config

使用 语法提供转换文件规则的新行分隔列表:

-transform <pathToTransformFile> -xml <pathToSourceConfigurationFile>.


xmlTransformationRules - 转换规则
string. 可选。 在 时 enableXmlTransform == true使用 。 默认值:-transform **\*.Release.config -xml **\*.config\n-transform **\*.$(Release.EnvironmentName).config -xml **\*.config

使用 语法提供换行分隔的转换文件规则列表:

-transform <pathToTransformFile> -xml <pathToSourceConfigurationFile>.


fileType - 文件格式
string. 允许的值:xmljson

提供替换所基于的文件格式。

对于 XML,生成或发布管道中定义的变量将与任何配置文件和 的 、 和 部分中的 或 nameparameters.xml项进行匹配keyconnectionStringsapplicationSettingsappSettings Variable Substitution 在配置转换后运行。

若要替换嵌套或分层的 JSON 变量,请使用 JSONPath 表达式指定它们。

例如,若要替换以下示例中的 值 ConnectionString ,需要将变量 Data.DefaultConnection.ConnectionString 定义为生成或发布管道 (或发布管道的环境) 。

{
  "Data": {
    "DefaultConnection": {
      "ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
    }
  }
}

变量替换在配置转换后运行。

注意:仅在生成/发布管道中定义的自定义变量用于替换。 排除默认/系统定义的管道变量。 如果在发布管道和阶段中定义了相同的变量,则阶段变量将取代发布管道变量。


targetFiles - 目标文件
string. 可选。 在 时 fileType = xml || fileType = json使用 。

提供换行分隔的文件列表,以替换变量值。 提供相对于根文件夹的文件名。


任务控制选项

除了任务输入,所有任务都有控制选项。 有关详细信息,请参阅 控制选项和常见任务属性

输出变量

无。

备注

FileTransform@2中提供了此任务的较新版本。

要求

要求 说明
管道类型 YAML、经典版本、经典版本
运行平台 Agent、DeploymentGroup
需求
功能 此任务不满足作业中后续任务的任何要求。
命令限制 任意
可设置变量 任意
代理版本 所有支持的代理版本。
任务类别 实用工具