FileTransform @ 1 задача не работает должным образом - PullRequest
1 голос
/ 30 сентября 2019

Я использую yaml FileTransform @ 1 для преобразования моего файла, но он не работает. он просто пропускает обновление файла

, пытался использовать xmlTransformationRules и объявлял filetype и tragetfiles, но, похоже, ничего не работает

    - task: FileTransform@1
      inputs:
        folderPath: '$(build.artifactStagingDirectory)/**/${{ parameters.projectToDeploy }}.zip'         
        enableXmlTransform: true
        xmlTransformationRules: '-transform **\MyConfig.Dev.config -xml **\MyConfig.config -result **\MyConfig.config'        

MyConnfig.config

<?xml version="1.0" encoding="utf-8"?>
<authenticationConfig xmlns:config="urn:telerik:sitefinity:configuration" xmlns:type="urn:telerik:sitefinity:configuration:type" config:version="11.1.6800.0">
    <securityTokenServiceSettings>
        <identityServerSettings enableLogging="True" mapUsersViaEmail="True" />
        <authenticationProviders>
                <add somecustomvalue ="1">
        </authenticationProviders>
    </securityTokenServiceSettings>
</authenticationConfig>

MyConfig.Dev. Config

<?xml version="1.0" encoding="utf-8"?>
<authenticationConfig xmlns:config="urn:telerik:sitefinity:configuration" xmlns:type="urn:telerik:sitefinity:configuration:type" config:version="11.0.6700.0"  xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <securityTokenServiceSettings xdt:Transform="Replace">
    <identityServerSettings enableLogging="True" mapUsersViaEmail="True" />
    <authenticationProviders >
      <add mynewvalue="2"/>
    </authenticationProviders>
  </securityTokenServiceSettings>
</authenticationConfig>

новая ошибка, которую я получаю

2019-09-30T23:49:01.0338926Z ##[warning]Can\'t find loc string for key:FailedToApplySpecialTransformation 
2019-09-30T23:49:01.0348290Z ##[warning]FailedToApplySpecialTransformation

1 Ответ

0 голосов
/ 01 октября 2019

Эта проблема вызвана неправильным написанием имени файла конфигурации. Вам следует изменить значение xmlTransformationRules на '-transform **\MyConfig.Dev.config -xml **\MyConnfig.config -result **\MyConfig.config'. Поскольку вы определили имя исходного XML-файла как MyConnfig.config.

Обратитесь к этой задаче FileTransform исходный код. Это фактический сценарий применения применить преобразование . Вы видите сообщение об ошибке, потому что isTransformationApplied равен false, и поскольку имена файлов не совпадают друг с другом, цикл for не может быть выполнен.

enter image description here

Сообщение об ошибке означает извините, я не думаю, что файл, который вы предоставили, соответствует указанному правилу, поэтому я не мог помочь вам применить этот процесс преобразования.


Первая проблема была бы решена, но теперь, в вашем файле MyConfig.Dev.Config, это, кажется, неверный xml. Поскольку я проверил ваши файлы конфигурации и получил сообщение об ошибке:

The 'add' start tag on line 6 position 18 does not match the end tag of 'authenticationProviders'

В вашем файле MyConnfig.config вы теряете / в теге <add>

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