J'essaie d'utiliser python pour traduire un ensemble de modèles en un ensemble de fichiers de configuration basés sur des valeurs tirées d'un fichier de configuration principal. Cependant, j'ai certains problèmes. Considérez l'exemple suivant d'un fichier de modèle.évaluation de fichiers modèles en python
file1.cfg.template
%(CLIENT1)s %(HOST1)s %(PORT1)d C %(COMPID1)s
%(CLIENT2)s %(HOST2)s %(PORT2)d C %(COMPID2)s
Ce fichier contient une entrée pour chaque client. Il y a des centaines de fichiers de configuration comme celui-ci et je ne veux pas avoir de logique pour chaque type de fichier de configuration. Python devrait faire les remplacements et générer des fichiers de configuration automatiquement étant donné un ensemble de valeurs globales lues à partir d'un fichier de configuration xml principal. Toutefois, dans l'exemple ci-dessus, si CLIENT2 n'existe pas, comment supprimer cette ligne? Je pense que Python générerait le fichier de configuration en utilisant quelque chose comme ceci:
os.open("file1.cfg.template").read() % myhash
où myhash est hachage des paramètres de configuration à partir du fichier de configuration principal qui ne peut contenir CLIENT2 du tout. Dans le cas où il ne contient pas CLIENT2, je veux que cette ligne disparaisse du fichier. Est-il possible d'insérer un bloc 'IF' dans le fichier et python l'évalue-t-il?
Merci pour votre aide. Toutes les suggestions sont les bienvenues.
Si quelqu'un pouvait donner un exemple en python ou un framework tiers comment atteindre ce comportement exact, ce serait fantastique. – user236215