Exemplo n.º 1
0
def main():
    parser = setup_parser()
    args = parser.parse_args()
    args.charmhome = args.charmhome or os.getenv('CHARM_HOME', '.')
    args.config = None

    if args.verbose:
        logging.basicConfig(
            format='%(levelname)s %(filename)s: %(message)s',
            level=logging.DEBUG,
        )
    else:
        logging.basicConfig(
            format='%(levelname)s: %(message)s',
            level=logging.INFO,
        )

    if not args.template:
        log.info(
            "Using default charm template (%s). To select a different "
            "template, use the -t option.", DEFAULT_TEMPLATE)
        args.template = DEFAULT_TEMPLATE
    elif args.template not in get_installed_templates():
        raise Exception("No template available for '%s'. Available templates "
                        "may be listed by running 'charm create --help'.")

    generator = CharmGenerator(args)
    try:
        generator.create_charm()
        return 0
    except CharmGeneratorException as e:
        log.error(str(e))
        return 1
Exemplo n.º 2
0
def main():
    parser = setup_parser()
    args = parser.parse_args()
    args.charmhome = args.charmhome or os.getenv('CHARM_HOME', '.')
    args.config = None

    if args.verbose:
        logging.basicConfig(
            format='%(levelname)s %(filename)s: %(message)s',
            level=logging.DEBUG,
        )
    else:
        logging.basicConfig(
            format='%(levelname)s: %(message)s',
            level=logging.INFO,
        )

    if not args.template:
        log.info(
            "Using default charm template (%s). To select a different "
            "template, use the -t option.", DEFAULT_TEMPLATE)
        args.template = DEFAULT_TEMPLATE
    elif args.template not in get_installed_templates():
        raise Exception("No template available for '%s'. Available templates "
                        "may be listed by running 'charm create --help'.")

    generator = CharmGenerator(args)
    try:
        generator.create_charm()
        return 0
    except CharmGeneratorException as e:
        log.error(str(e))
        return 1
Exemplo n.º 3
0
def setup_parser():
    parser = argparse.ArgumentParser(description="create a new charm")

    parser.add_argument("charmname", help="Name of charm to create.")
    parser.add_argument("charmhome", nargs="?", help="Dir to create charm in. Defaults to CHARM_HOME env var or PWD")
    parser.add_argument(
        "-t",
        "--template",
        default=None,
        help="Name of charm template to use; default is "
        + DEFAULT_TEMPLATE
        + ". Installed templates: "
        + ", ".join(get_installed_templates()),
    )
    parser.add_argument(
        "-a",
        "--accept-defaults",
        help="Accept all template configuration defaults without prompting.",
        action="store_true",
        default=False,
    )
    parser.add_argument("-v", "--verbose", help="Print debug information", action="store_true", default=False)
    utils.add_plugin_description(parser)

    return parser
Exemplo n.º 4
0
def setup_parser():
    parser = argparse.ArgumentParser(
        description='create a new charm')

    parser.add_argument(
        'charmname',
        help='Name of charm to create.',
    )
    parser.add_argument(
        'charmhome', nargs='?',
        help='Dir to create charm in. Defaults to CHARM_HOME env var or PWD',
    )
    parser.add_argument(
        '-t', '--template', default=None,
        help='Name of charm template to use; default is ' + DEFAULT_TEMPLATE +
             '. Installed templates: ' + ', '.join(get_installed_templates()),
    )
    parser.add_argument(
        '-a', '--accept-defaults',
        help='Accept all template configuration defaults without prompting.',
        action='store_true', default=False,
    )
    parser.add_argument(
        '-v', '--verbose',
        help='Print debug information',
        action='store_true', default=False,
    )
    utils.add_plugin_description(parser)

    return parser
Exemplo n.º 5
0
def setup_parser():
    parser = argparse.ArgumentParser(
        description='create a new charm')

    parser.add_argument(
        'charmname',
        help='Name of charm to create.',
    )
    parser.add_argument(
        'charmhome', nargs='?',
        help='Dir to create charm in. Defaults to CHARM_HOME env var or PWD',
    )
    parser.add_argument(
        '-t', '--template', default=None,
        help='Name of charm template to use; default is ' + DEFAULT_TEMPLATE +
             '. Installed templates: ' + ', '.join(get_installed_templates()),
    )
    parser.add_argument(
        '-a', '--accept-defaults',
        help='Accept all template configuration defaults without prompting.',
        action='store_true', default=False,
    )
    parser.add_argument(
        '-v', '--verbose',
        help='Print debug information',
        action='store_true', default=False,
    )
    utils.add_plugin_description(parser)

    return parser