Seite 1 von 1

Vorlagen-Engine

Veröffentlicht: 3. Oktober 2016 - 17:19 Uhr
von Aguay
Hallo,

ich würde gerne wissen, ob es eine Art Template-Engine gibt.

Zum Beispiel könnte man in einer Konfigurationsdatei "{{ hostname }}" einfügen, und der Hostname würde automatisch abgerufen.

Dadurch ließen sich für jede Workstation individuelle Konfigurationsdateien erstellen. Ich habe dazu bisher kaum Informationen gefunden. Falls jemand etwas weiß, wäre ich sehr interessiert.

Auch Workarounds wären hilfreich.

Vielen Dank im Voraus!

Betreff: Template-Engine

Veröffentlicht: 5. Oktober 2016 - 11:50 Uhr
von Aguay
Ich werde die Frage selbst beantworten, um vielleicht anderen Nutzern zu helfen :)

Jinja2 ist auf jedem Rechner mit den Clients vorhanden, sodass es möglich ist, diese Bibliothek zum Erstellen von Konfigurationsvorlagen zu verwenden.

Hier ein Auszug aus dem Paket mit Jinja2:

Code: Alle auswählen

from jinja2 import Environment, FileSystemLoader

THIS_DIR = os.getcwd()
j2_env = Environment(loader=FileSystemLoader(THIS_DIR),
                         trim_blocks=True)
template = j2_env.get_template('template.yml')
file = open('config.yml', 'w')
file.write(template.render(value="Une valeur"))
file.close()
Und in meiner template.yml-Datei steht etwa Folgendes:

Code: Alle auswählen

# template.yml

server_url: https://exemple.com
agent_name : {{ value }}
Daher können wir während der Ausführung eine Variable in das Feld des Wertes einfügen, der auf die Vorlage angewendet werden soll.

Dies ist ein sehr einfaches Beispiel, aber es könnte hilfreich sein ;)

Betreff: Template-Engine

Veröffentlicht: 26. Oktober 2016 - 14:31 Uhr
von Ekouyoja
Danke für die Info, ich wusste gar nicht, dass Jinja2 enthalten ist, um Vorlagen erstellen zu können, was für die Verwaltung von Arbeitsstationen sehr nützlich sein kann. :D