35 lines
1 KiB
Python
Executable file
35 lines
1 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
from configparser import ConfigParser
|
|
import socket
|
|
|
|
from re2oapi import Re2oAPIClient
|
|
|
|
from jinja2 import Environment, FileSystemLoader
|
|
|
|
config = ConfigParser()
|
|
config.read('config.ini')
|
|
|
|
api_hostname = config.get('Re2o', 'hostname')
|
|
api_password = config.get('Re2o', 'password')
|
|
api_username = config.get('Re2o', 'username')
|
|
|
|
|
|
|
|
api_client = Re2oAPIClient(api_hostname, api_username, api_password)
|
|
|
|
client_hostname = socket.gethostname().split('.', 1)[0]
|
|
|
|
all_switchs = api_client.list("switchs/ports-config/")
|
|
|
|
|
|
# Création de l'environnement Jinja
|
|
ENV = Environment(loader=FileSystemLoader('.'))
|
|
|
|
# Import du fichier template dans une variable "template"
|
|
template = ENV.get_template("templates/hp_test.tpl")
|
|
|
|
# Création du template final avec les valeurs contenues dans le dictionnaire "valeurs" - Ces valeurs sont positionnées dans un objet "temp", qui sera utilisé par le moteur, et que l'on retrouve dans le template.
|
|
conf = template.render(switch=all_switchs[2])
|
|
|
|
print(all_switchs[2])
|
|
print(conf)
|