36 lines
1.3 KiB
Python
36 lines
1.3 KiB
Python
#!/usr/bin/env python
|
|
#from __future__ import absolute_import
|
|
import json
|
|
import os
|
|
import hachoir_regex
|
|
|
|
with open('tools/config.json') as f:
|
|
config = json.load(f)
|
|
|
|
def generate_regex(subdir):
|
|
paths = os.listdir(subdir)
|
|
as_regex = [hachoir_regex.parse(path) for path in paths]
|
|
return reduce(lambda x, y: x | y, as_regex)
|
|
|
|
def generate_tftpd_rules(regex, dirname, outfile):
|
|
if "tftpd-hpa" in config["generate_config"]:
|
|
outfile.write("ri ^{}$ /firmware/{}/\\1\n".format(regex, dirname))
|
|
|
|
def generate_nginx_rules(regex, dirname, outfile):
|
|
if "nginx" in config["generate_config"]:
|
|
outfile.write("rewrite ^{}$ /firmware/{}/$1\n".format(regex, dirname))
|
|
|
|
if __name__ == '__main__':
|
|
rootdir = "./tftpboot/firmware/"
|
|
# tftpd_rules = open("etc/tftpd-hpa/tftpd.rules", "w")
|
|
# nginx_rules = open("etc/nginx/sites-available/nginx.rules", "w")
|
|
#
|
|
# for subdir in next(os.walk(rootdir))[1]:
|
|
# regex = generate_regex(os.path.join(rootdir, subdir))
|
|
# generate_tftpd_rules(regex, os.path.basename(subdir), tftpd_rules)
|
|
# generate_nginx_rules(regex, os.path.basename(subdir), nginx_rules)
|
|
#
|
|
# tftpd_rules.close();
|
|
# nginx_rules.close();
|
|
#app.debug = os.environ.get('FLASK_DEBUG', True)
|
|
#print config.get["scopes"] |