2017-04-20 2 views
-2

Wie Sie die Werte in der application.properties im Frühjahr aktualisieren, während Sie mit anisibile-Skripten arbeiten.Aktualisieren Sie die Werte für application.properties mit ansbile

Ich könnte Ansibles LineInfile-Modul verwenden und Werte durch Regex ersetzen. Aber ich suche nach einer besseren Lösung.

EDIT: Mit Ansible Jinja Vorlage ist eine andere Lösung. Aber damit, wann immer ich etwas in der application.properties des spring, sollte ich es auch in der Vorlage hinzufügen. Aber ich möchte, dass es an einem Ort ist.

Antwort

0

Sie sollten hierfür template mit Jinja Templating Modul verwenden. Sie müssen Vorlage .j2 Datei erstellen, die aussehen wird:

logging.level.root={{logging_level_root}} 
endpoints.enabled={{endpoints_enabled}} 

Werte in {{}} von Variablen aufgelöst werden, die typischerweise in Inventardateien für jede Umgebung gespeichert sind. lineinfile ist nützlich in verschiedenen Situationen - in der Regel ersetzt Zeile in Datei.

+0

Immer wenn ich etwas in der Datei application.properties in der Spring-Datei hinzufüge, sollte ich es auch in der Jinja-Vorlage hinzufügen. Aber ich möchte, dass es an einem Ort ist. –

+0

Wenn Sie Ihre Eigenschaften an einem Ort haben möchten, erstellen Sie die Datei 'application.properties' und verwenden Sie das ansible copy-Modul. – reynev

+0

Entschuldigung, dass ich es vorher nicht erwähnt habe. In der lokalen Entwicklungsumgebung verwende ich keine verwendbare Bereitstellung. Also sollte es eine application.properties in der Spring-Datei geben. Während der möglichen Implementierung habe ich die Möglichkeit, regex match und replace zu verwenden. –

Verwandte Themen