2016-06-29 8 views
0

Bevor ich Octopus Deploy gezeigt habe, dachte ich, dass Umgebungsabhängige AppSettings Teil von Buildkonfiguration in Projekteigenschaften sein sollten.Visual Studio Team Services Web.Config Ersatzvariablen

Jetzt in Zeiten von Software als Dienst ist es ein Bereitstellungsprozess, der alles verschlingt.

Ich möchte, dass meine Umgebungskonfiguration im Freigabevorgang web.config öffnet und Appsettings und Verbindungszeichenfolgen basierend auf Variablennamen ersetzt, die ich für die Release-Definition definiert habe.

Wie kann ich es tun? Das nächste, was ich bekommen konnte, war Magic Brocken. Das Problem dabei ist, dass ich ihm ein JSON mit dem Mapping geben muss und ich muss es für jede Umgebung separat definieren, so dass es wirklich keine Umgebungsvariablen verwendet, oder zumindest muss man es in "Umgebungsvariablen" definieren "Abschnitt und dann wieder in jedem Prozess der Umgebung.

enter image description here enter image description here

Antwort

0

Sie können die "Tokenizer" Aufgabe in "Release Management Utility tasks" Erweiterung oder "Replace Tokens" Aufgabe verwenden.

Diese Tasks können die Zeichenfolgen in einer Datei durch die benutzerdefinierten Variablen in der Definition ersetzen.

+0

Ja, aber Sie können Token nicht in web.config aufbewahren, da Entwickler die Apps auf Localhosts ausführen müssen. – doker

+0

@doker Sie können es mit SlowCheetah Transformation zusammen verwenden, indem Sie eine weitere Konfigurationen hinzufügen: https://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5 –

+0

Das ist cool, immer noch. Ich glaube, dass der Quellcode völlig umweltunabhängig sein sollte. Der Buildprozess sollte die richtigen Werte für die Zielumgebung festlegen. – doker

Verwandte Themen