#!/usr/bin/python3 import sys, os from zonemaker.zone import Zone #import typing def load_module(name, path, write_bytecode = False): old_val = sys.dont_write_bytecode sys.dont_write_bytecode = not write_bytecode module = None try: from importlib.machinery import SourceFileLoader module = SourceFileLoader(name, path).load_module() except ImportError: import imp module = imp.load_source(name, path) finally: sys.dont_write_bytecode = old_val return module def make_zone(filename: str) -> None: zonefile = load_module(os.path.basename(filename), filename) zone = zonefile.__zone__ # type: Zone zone.write() if __name__ == "__main__": for name in sys.argv[1:]: make_zone(name)