2020-11-10 17:14:21 +01:00

37 lines
1.0 KiB
Python

from vars import VARS
import os
import jinja2
import subprocess
PROJECT_PATH = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
print('PROJECT_PATH: {}'.format(PROJECT_PATH))
template_path = os.path.join(PROJECT_PATH, 'conf/templates')
template_loader = jinja2.FileSystemLoader(searchpath=template_path)
template_env = jinja2.Environment(loader=template_loader)
def render_template(src, dest, template_vars=None):
"""
:param src: relative string path to jinja template file
:param dest: absolute string path of output destination file
:param template_vars: variables to render template with
:return: None
"""
template = template_env.get_template(src)
if template_vars:
template_vars.update(VARS)
else:
template_vars = VARS
output_text = template.render(template_vars=template_vars)
if os.path.exists(dest):
os.remove(dest)
with open(dest, 'w') as f:
f.write(output_text)
def cargo_install(package):
subprocess.call(['/root/.cargo/bin/cargo', 'install', package])