Select Git revision
bootstrap.sh
pupak.py 981 B
#!/usr/bin/env python3
"""Entry-point file"""
import logging
import sys
from pathlib import Path
from build import ConfigBuilder
from constants import APP_LOG_TAG
from customlog import setup_logging
from generator import Generator
from rawconfig import RawConfig
if __name__ == "__main__":
# Bootstrapping
setup_logging()
logger = logging.getLogger(APP_LOG_TAG)
logger.debug("Starting Pupák generator script.")
if len(sys.argv) < 1 + 1:
logger.error("Not enough CLI args.")
logger.error("Usage: data_folder")
exit(1)
data_folder = Path(sys.argv[1])
# Read service YAML files and preload templates
raw = RawConfig(data_folder)
# Fill YAML-jinja2 templates,
# prepare the final data-model
builder = ConfigBuilder(raw)
builder.build()
# print("Data scheme validation:")
# cfg.validate()
# print("Data scheme is VALID.")
generator = Generator(data_folder, builder)
generator.ignite()