Moteur de Templating

Share here your tips or issues concerning WAPT Console or WAPT Agent / Venez ici partager vos problèmes et astuces concernants la console et l'agent WAPT
Règles du forum
Règles du forum communautaire
* English support on www.reddit.com/r/wapt
* Le support communautaire en français se fait sur ce forum
* Merci de préfixer le titre du topic par [RESOLU] s'il est résolu.
* Merci de ne pas modifier un topic qui est taggé [RESOLU]. Ouvrez un nouveau topic en référençant l'ancien
* Préciser version de WAPT installée, version complète ET numéro de build (2.2.1.11957 / 2.2.2.12337 / etc.) AINSI QUE l'édition Enterprise / Discovery
* Les versions 1.8.2 et antérieures ne sont plus maintenues. Les seules questions acceptées vis à vis de la version 1.8.2 sont liés à la mise à jour vers une version supportée (2.1, 2.2, etc.)
* Préciser OS du serveur (Linux / Windows) et version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019)
* Préciser OS de la machine d'administration/création des paquets et de la machine avec l'agent qui pose problème le cas échéant (Windows 7 / 10 / 11 / Debian 11 / etc.)
* Eviter de poser plusieurs questions lors de l'ouverture de topic, sinon il risque d'être ignorer. Si plusieurs sujet, ouvrir plusieurs topic, et de préférence les uns après les autres et pas tous en même temps (ie ne pas spammer le forum).
* Inclure directement les morceaux de code, les captures d'écran et autres images directement dans le post. Les liens vers les pastebin, les bitly et autres sites tierces seront systématiquement supprimés.
* Comme tout forum communautaire, le support est fait bénévolement par les membres. Si vous avez besoin d'un support commercial, vous pouvez contacter le service commercial Tranquil IT au 02.40.97.57.55
Avatar de l’utilisateur
Aguay
Messages : 27
Inscription : 22 mai 2015 - 16:20

03 oct. 2016 - 17:19

Bonjour,

J'aurais aimé savoir si il y avait une sorte de moteur de templating.

Genre dans un fichier de conf on met "{{ hostname }}" et ca récupère le nom du poste.

Ça permettrais de générer des fichiers de conf unique pour chaque poste. J'ai pas trop trouvé d'info sur ce sujet. Si certains en ont je suis intéressé.

Et même si certaines personnes ont des "Workarounds" je suis intéressé.

Merci d'avance !
Avatar de l’utilisateur
Aguay
Messages : 27
Inscription : 22 mai 2015 - 16:20

05 oct. 2016 - 11:50

Je vais répondre à moi même pour peut être aider d'autre utilisateur :)

Il existe Jinja2 sur chaque poste avec les clients du coup il est possible d'utiliser cette librairie pour créer des templates de configuration.

Voici un extrait du paquet utilisant Jinja2:

Code : Tout sélectionner

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()
Et dans mon fichier template.yml il y a quelque chose du genre :

Code : Tout sélectionner

# template.yml

server_url: https://exemple.com
agent_name : {{ value }}
Du coup lors de l'exécution, on peut mettre une variable dans le champs de la valeur à appliquer au template.

C'est un exemple réduit au plus simple, mais ça peut aider ;)
Ekouyoja
Messages : 18
Inscription : 18 juil. 2016 - 10:35

26 oct. 2016 - 14:31

Merci de l'info, je ne savais même pas qu'il embarquait jinja2 pour pouvoir faire des templates ce qui peut être très pratique pour de la gestion de poste. :D
Verrouillé