def AppFixture():
    MM = MudMapper()
    MM.bootstrap()
    MM.initialize()
    MM.show()

    return MM
示例#2
0
class Runner(object):
    def __init__(self):
        """Main execution path """

        # Read settings, environment variables, and CLI arguments
        self.read_cli_args()
        self.load_app()

        if self.args.dry_run:
            print "Dry run mode, not writing anything to disk"
            pp.pprint(self.app.config.__dict__)
            sys.exit(0)

        self.app.template_command_to_use(self.args)

    def load_app(self):
        """Initalize app settings"""
        self.app = Application(self.args)
        self.app.bootstrap()

    def read_cli_args(self):
        """ Command line argument processing """
        # https://stackoverflow.com/questions/37930737/how-to-write-argparse-in-python-using-abstract-base-class
        parser = argparse.ArgumentParser(
            description='Generate Various files from Jinja2 templates')
        sp1 = parser.add_subparsers(dest='cmd1')
        ps3 = sp1.add_parser('generate')
        ps3.add_argument("-d",
                         "--dry-run",
                         action="store_true",
                         help="Whether to autoupdate parameters or not")
        ps3.add_argument("-w",
                         "--workspace",
                         dest="workspace",
                         type=str,
                         default=os.getcwd(),
                         help="Where to search for configs. Defaults to cwd")
        ps3.add_argument("-j", "--jinja-file", help=".j2 file to render")
        ps3.add_argument("-p", "--product", help="product name eg 'boss'")
        ps3.add_argument("-c",
                         "--config",
                         dest="config",
                         help="Configuration location.")
        ps3.add_argument("-v",
                         "--verbose",
                         action="store_true",
                         help="Verbose output.")

        self.args = parser.parse_args()
        print self.args
示例#3
0
from application import Application as MudMapper

mapper = MudMapper()
mapper.bootstrap()
mapper.initialize()
mapper.show()
mapper.run()