import os, shutil from g import templates_dir, config_dir, DEFAULT_UID, DEFAULT_GID from .jinja import render_jinja from .misc import prepare_dir clair_template_dir = os.path.join(templates_dir, "clair") def prepare_clair(config_dict): clair_config_dir = prepare_dir(config_dir, "clair") if os.path.exists(os.path.join(clair_config_dir, "postgresql-init.d")): print("Copying offline data file for clair DB") shutil.rmtree(os.path.join(clair_config_dir, "postgresql-init.d")) shutil.copytree(os.path.join(clair_template_dir, "postgresql-init.d"), os.path.join(clair_config_dir, "postgresql-init.d")) postgres_env_path = os.path.join(clair_config_dir, "postgres_env") postgres_env_template = os.path.join(clair_template_dir, "postgres_env.jinja") clair_config_path = os.path.join(clair_config_dir, "config.yaml") clair_config_template = os.path.join(clair_template_dir, "config.yaml.jinja") clair_env_path = os.path.join(clair_config_dir, "clair_env") clair_env_template = os.path.join(clair_template_dir, "clair_env.jinja") render_jinja( postgres_env_template, postgres_env_path, **config_dict) render_jinja( clair_config_template, clair_config_path, uid=DEFAULT_UID, gid=DEFAULT_GID, **config_dict) # config http proxy for Clair render_jinja( clair_env_template, clair_env_path, **config_dict)