Поделиться через


FileTransform@1 — задача преобразования файлов версии 1

Используйте эту задачу для замены маркеров переменными значениями в ФАЙЛАх конфигурации 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.

Путь к файлу к пакету или папке.

Переменные: Build и Release. Поддерживаются подстановочные знаки.

Например, $(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. Допустимые значения: xml, json.

Предоставляет формат файла, в котором выполняется подстановка.

Для XML переменные, определенные в конвейерах сборки или выпуска, будут сопоставляться с key записями или name в appSettingsразделах , applicationSettingsи connectionStrings любого файла конфигурации и parameters.xml. 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.

Предоставляет разделенный новыми строками список файлов для замены значений переменных. Имена файлов должны быть указаны относительно корневой папки.


Параметры управления задачами

Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.

Выходные переменные

Нет.

Remarks

На FileTransform@2 доступна более новая версия этой задачи.

Требования

Требование Описание
Типы конвейеров YAML, классическая сборка, классический выпуск
Выполняется в Агент, DeploymentGroup
Требования Нет
Capabilities Эта задача не удовлетворяет требованиям для последующих задач в задании.
Ограничения команд Любой
Устанавливаемые переменные Любой
Версия агента Все поддерживаемые версии агента.
Категория задач Служебная программа