0

Pour notre débogage local, nous utilisons cela dans notre web.configOctopus Déployer transformation du fournisseur SessionState

<sessionState mode="Custom" customProvider="MyAppStateStore" timeout="480"> 
    <providers> 
    <add name="MyAppStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" 
     applicationName="MyApp" 
     host="127.0.0.1" 
     accessKey="" 
     ssl="false" /> 
    </providers> 
</sessionState> 

Sur notre serveur Dev, nous aimerions qu'il soit ceci:

<sessionState mode="Custom" customProvider="MyAppStateStore" timeout="480"> 
    <providers> 
    <add name="MyAppStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" 
     applicationName="MyApp" 
     host="www.oursite.com.backends" 
     port="1234" 
     databaseId="1" 
     accessKey="" 
     connectionTimeoutInMilliseconds="5000" 
     operationTimeoutInMilliseconds="1000" 
     throwOnError="true" 
     ssl="false" /> 
    </providers> 
</sessionState> 

Pour la plupart des nos appSettings web.config nous utilisons les variables OD pour les transformations pendant le déploiement. Est-il possible d'inclure un paramètre complexe comme celui-ci dans la transformation sans utiliser un fichier .config de transformation?

Répondre

0

L'utilisation d'une transformation config (web..config) est l'approche la plus simple. Vous pouvez le combiner avec la fonction "Remplacer les variables dans les fichiers" si vous voulez utiliser des espaces réservés. Par exemple:

web.production.config:

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <sessionState mode="Custom" customProvider="MyAppStateStore" timeout="480"> 
    <providers> 
     <add 
     xdt:Transform="Replace" 
     xdt:Locator="Match(name)" 
     name="MyAppStateStore" 
     type="Microsoft.Web.Redis.RedisSessionStateProvider" 
     applicationName="MyApp" 
     host="#{Host}" 
     port="1234" 
     databaseId="1" 
     accessKey="" 
     connectionTimeoutInMilliseconds="5000" 
     operationTimeoutInMilliseconds="1000" 
     throwOnError="true" 
     ssl="false" /> 
    </providers> 
    </sessionState> 
</configuration> 

Vous pouvez alors définir Host comme une variable dans Octopus.

Il y a beaucoup d'informations et des exemples ici:

https://octopus.com/docs/deploying-applications/configuration-files