diff options
author | root <root@colazero.tele.tg18.gathering.org> | 2018-03-23 16:57:01 +0100 |
---|---|---|
committer | root <root@colazero.tele.tg18.gathering.org> | 2018-03-23 16:57:01 +0100 |
commit | d6a5794527b555dca86be61c757d24bb86930dd3 (patch) | |
tree | 76f1905638841de85d9c70e096a7ce3bc65c887e /templating/templating.py | |
parent | 22d72afb561091aeaee6a62fb2afbf61dc8bcd7a (diff) |
Update templating
Diffstat (limited to 'templating/templating.py')
-rwxr-xr-x | templating/templating.py | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/templating/templating.py b/templating/templating.py index 60b2616..3a29d7b 100755 --- a/templating/templating.py +++ b/templating/templating.py @@ -3,6 +3,7 @@ import requests,traceback from jinja2 import Template,Environment,FileSystemLoader,TemplateNotFound import json +import netaddr import http.server from enum import Enum @@ -19,7 +20,27 @@ def updateData(): for a in endpoints: objects[a] = getEndpoint(a) -env = Environment(loader=FileSystemLoader(['templates/','/opt/gondul/data/templates', '/opt/gondul/web/templates']),lstrip_blocks=True, trim_blocks=True) +def netmask(ip): + return netaddr.IPNetwork(ip).netmask +def networkId(ip): + return netaddr.IPNetwork(ip).ip +def getFirstDhcpIp(ip): + return netaddr.IPNetwork(ip)[3] +def getLastDhcpIp(ip): + return netaddr.IPNetwork(ip)[-1] +def getDistro(src): + return src.split(":")[0] +def getPort(src): + return src.split(":")[1] + +env = Environment(loader=FileSystemLoader(['templates/','/opt/gondul/data/templates', '/opt/gondul/web/templates']), trim_blocks=True) + +env.filters["netmask"] = netmask +env.filters["networkId"] = networkId +env.filters["getFirstDhcpIp"] = getFirstDhcpIp +env.filters["getLastDhcpIp"] = getLastDhcpIp +env.filters["agentDistro"] = getDistro +env.filters["agentPort"] = getPort class Mode(Enum): Get = 1 |