2017-10-05 2 views
0

Je fichier de configuration (file1.config) recherche un peu comme ceci:erreur dans le déploiement Octopus: Trouvé plusieurs éléments cibles, mais le « remplacer » Transform applique uniquement au premier match

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <myelement> 
    oldvalue 
    </myelemetn> 
</configuration> 

Je veux remplacer « oldvalue » avec "newvalue". Pour cette raison, je l'ai créé un fichier (file1.Development.config) recherche quelque chose comme ceci:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <myelement xdt:Transform="Replace"> 
    newvalue 
    </myelemetn> 
</configuration> 

Le problème est que lorsque je Déployez le package avec Octopus Déployer je reçois l'erreur suivante:

Found multiple target elements, but the 'Replace' Transform only applies to the first match

Répondre

0

Je résolu le problème en ajoutant un xdt: Locator. Alors maintenant, mon fichier de transformation ressemble à ceci:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <myelement xdt:Transform="Replace" xdt:Locator="XPath(/configuration/myelement)"> 
    newvalue 
    </myelemetn> 
</configuration>