Ich muss Konfigurationsinformationen pro Umgebung in einem Tool speichern.
Dies ist ein Tool mit einer GUI zum Hinzufügen / Aktualisieren von Konfigurationswerten (z. B. Verbindungszeichenfolgen). Dies sollte einen Standardwert haben und diesen basierend auf verschiedenen Umgebungen ändern können.
Es sollte eine API vorhanden sein, um diese Konfigurationswerte während der Bereitstellung in einer bestimmten Umgebung abzurufen und der Anwendung hinzuzufügen.
Ich habe eine Weile gesucht und kann keine Tools sehen, die zu dieser Rechnung passen würden. Gibt es irgendwelche Vorschläge?
Hinweis : Derzeit befinden sich die Einstellungen in TeamCity-Variablen und die Bereitstellung erfolgt über PowerShell-Skripts.
Antworten:
Es gibt viele Tools, die so etwas tun können, einschließlich Konfigurationsmanagement-Tools wie Chef, Ansible oder Puppet. und KVS-Tools wie Consul und etcd. Sie können es auch als Build-Schritt in Ihren CI-Server integrieren oder das Problem mithilfe der Live-Konfiguration zur Laufzeit mit einem externen Konfigurationsspeicher umgehen (wiederum so etwas wie Consul oder etcd oder eine beliebige Datenbank).
quelle
Möglicherweise ein anderes Repo? Eine mit Niederlassungen für QA, UAT, Prod (von noch mehr). Ein Repo, das sich von Ihren regulären Repos "Code as Code" und "Infrastructure as Code" unterscheidet.
Es ist sehr nuanciert. Wie viel Konfiguration pro Umgebung? Wird zwischen den Veröffentlichungen umgeschaltet? Sollten diese Umschaltzustände trotz binärer Bereitstellungen den Zustand beibehalten. Für welchen Client, Kunden, Gast oder Benutzer pflegen Sie die Konfiguration?
Ich habe über 5 Jahre eine Reihe von Blogeinträgen (und Prototypen / Demos) zu diesem Thema geschrieben - einschließlich Benutzeroberflächen für das Umschalten (falls erforderlich).
quelle