#!/usr/bin/python2 import yaml import os from jinja2 import Environment, FileSystemLoader # configs basepath="./data" www_dir="./www" env = Environment( loader = FileSystemLoader('./templates')) hosts = [] def load_yaml(path): with open(path) as f: return yaml.load(f) hosts = load_yaml(os.path.join(basepath, "metadata", "hosts")) data = [] for host in hosts['hosts']: host_data = load_yaml(os.path.join(basepath, host)) template = env.get_template('host.html') print("Rendering host: " + host) url = host + ".html" with open(os.path.join(www_dir, url),"w+") as f: f.write(template.render(**host_data)) host_data['url'] = url data.append(host_data) template = env.get_template('index.html') print("Rendering host index") with open(os.path.join(www_dir, 'index.html'), "w+") as f: f.write(template.render(hosts=data)) print("done")