Angenommen, ich habe eine auffällige CI- und CD-Pipeline mit den Tools, die ich im Fragetitel erwähnt habe.Was ist eine gute Lösung, um Variablen synchron zu halten - Terraform, Chef, Jenkins, Octopus Deploy
Lassen Sie uns auch sagen, dass es Konfigurationsdateien und andere Dinge gibt, die mit Variablen in all diesen Systemen parametrisiert sind. Variablen, die in der Tat manchmal über alle übereinstimmen müssen. Hostnamen, Ports, Verbindungszeichenfolgen usw.
Wie kann ich oder welche Tools verfügbar sind, um diese Variablen an einem einzigen Ort oder zumindest zu halten, stellen Sie sicher, dass sie miteinander synchronisiert bleiben, wenn sie brauchen zu?
Mein bisher bestes Denken ist es, einige automatisierte Tests zu schreiben, aber da die Variablen im Allgemeinen in den Systemen selbst gespeichert sind, fühlt sich das ein wenig klobig an. Ich könnte die Variablen in mehr Config in der Quelle speichern, aber dann sind einige von ihnen sichere Variablen (Produktionspasswörter usw ..) und das wäre auch ein bisschen ein Kompromiss.
Es gibt eine Tonne dieser Variablen und ich kann sehen, dass es ein echtes Problem wird, je mehr ich diesen Weg gehe.
Hat jemand das schon gelöst?
Ist Ihre Konfiguration von Ihrer Software abgekoppelt? Oder backen Sie die Konfiguration direkt in Ihre Binärdateien, ohne sie später in der CI/CD-Pipeline ändern zu können? – Bricktop
Die Config wird in Konfigurationsdateien in Token umgewandelt. – Stimul8d
Das klingt nach einem guten Anwendungsfall für etwas wie Consul - https://www.consul.io/. Sie können sowohl Ihr "Sync" Problem als auch das Speichern von sicheren Variablen lösen. –