Momentan verwende ich Visual Studio Team Services mit einem privaten Code-Repository, das mein Projekt enthält. Ich habe ein Continuous Integration Set-up, das neuen Code schnappt, ihn erstellt, Unit-Tests ausführt und dann alles auf einer Azure-Website veröffentlicht. Funktioniert super.Visual Studio Team Services - Einstellungen für das Testen von Einheiten öffentlichen Repo
Jetzt ist die Zeit reif, Open Source mit dem Code zu gehen. Ich möchte alles auf GitHub verschieben, aber die VS Team Services zum Erstellen, Testen und Bereitstellen weiterhin verwenden. Ich habe Sachen aufgeräumt, die ich nicht im öffentlichen Repo haben möchte (Appsettings, Verbindungszeichenfolge). Für die Webanwendung selbst ist es ziemlich einfach, all die "privaten" Dinge, die ich in das Azure-Portal verschoben und aus der web.config entfernt habe. Einstellungen werden automatisch überschrieben und ich kann eine web.config einchecken, die keine sensiblen Daten enthält.
Aber dann kam ich zu meinem Unit-Test-Projekt. Hmmm, was nun? Ich möchte meine Einstellungsdatei nicht so einchecken, wie sie jetzt ist, aber die Tests basieren auf diesen Einstellungen. Was ist also eine gute Übung, um sicherzustellen, dass die Tests ausgeführt werden können, ohne dass meine Einstellungen in einem öffentlichen Repository angezeigt werden?
Entschuldigung im Voraus, da diese Frage wahrscheinlich bereits beantwortet wurde, aber ich konnte alles finden, was dieses spezielle Problem wirklich beschreibt.
Das scheint wirklich gut zu funktionieren, danke Eddie! – Jasper
Hey @Eddie - MSFT, ich hätte das früher realisieren sollen, aber ohne die richtigen Tokens in meiner Konfiguration, natürlich kann ich keine Tests mehr lokal ausführen. Gibt es eine ähnliche Möglichkeit, die Tokens für lokale Tests zu ersetzen, ohne dass irgendetwas eingecheckt werden muss? – Jasper
@Jasper Sie können die Umwandlung web.config verwenden: https://msdn.microsoft.com/en-us/library/dd465318(v=vs.100).aspx. –