Example #1
0
def build_usage_and_options():
    from infi.projector.plugins import plugin_repository
    usage = ''
    options = ''
    for plugin in plugin_repository.get_all_plugins():
        docopt_string = plugin.get_docopt_string()
        plugin_usage, plugin_options = parse_docopt_string(docopt_string)
        usage = '\n'.join([usage, plugin_usage])
        options = '\n'.join([options, plugin_options])
    options = sort_options(options)
    return usage, options
Example #2
0
def build_usage_and_options():
    from infi.projector.plugins import plugin_repository
    usage = ''
    options = ''
    for plugin in plugin_repository.get_all_plugins():
        docopt_string = plugin.get_docopt_string()
        plugin_usage, plugin_options = parse_docopt_string(docopt_string)
        usage = '\n'.join([usage, plugin_usage])
        options = '\n'.join([options, plugin_options])
    options = sort_options(options)
    return usage, options
Example #3
0
def parse_commandline_arguments(argv):
    from infi.projector.plugins import plugin_repository
    from docopt import docopt
    doc = get_commandline_doc()
    arguments = dict(docopt(doc, argv=argv, version=get_version()))
    if arguments.get('-v'):
        print get_version()
        return
    plugins = {plugin.get_command_name():plugin for plugin in plugin_repository.get_all_plugins()}
    [selected_plugin] = [value for key, value in plugins.items() if arguments.get(key)]
    append_default_arguments_from_configuration_files(arguments)
    selected_plugin.parse_commandline_arguments(arguments)
Example #4
0
def parse_commandline_arguments(argv):
    from infi.projector.plugins import plugin_repository
    from docopt import docopt
    doc = get_commandline_doc()
    arguments = dict(docopt(doc, argv=argv, version=get_version()))
    if arguments.get('-v'):
        print get_version()
        return
    plugins = {
        plugin.get_command_name(): plugin
        for plugin in plugin_repository.get_all_plugins()
    }
    [selected_plugin
     ] = [value for key, value in plugins.items() if arguments.get(key)]
    append_default_arguments_from_configuration_files(arguments)
    selected_plugin.parse_commandline_arguments(arguments)
Example #5
0
def parse_commandline_arguments(argv):
    from infi.projector.plugins import plugin_repository
    from docopt import docopt
    doc = get_commandline_doc()
    arguments = dict(docopt(doc, argv=argv, version=get_version()))
    if arguments.get('-v'):
        print(get_version())
        return
    selected_plugins = [plugin for plugin in plugin_repository.get_all_plugins()
                        if arguments.get(plugin.get_command_name())]
    append_default_arguments_from_configuration_files(arguments)
    if not selected_plugins:
        logger.error("No matching plugin found")
        return
    if not any(selected_plugin.parse_commandline_arguments(arguments) for selected_plugin in selected_plugins):
        logger.error("No matching method found")
        return
Example #6
0
def parse_commandline_arguments(argv):
    from infi.projector.plugins import plugin_repository
    from docopt import docopt
    doc = get_commandline_doc()
    arguments = dict(docopt(doc, argv=argv, version=get_version()))
    if arguments.get('-v'):
        print(get_version())
        return
    selected_plugins = [
        plugin for plugin in plugin_repository.get_all_plugins()
        if arguments.get(plugin.get_command_name())
    ]
    append_default_arguments_from_configuration_files(arguments)
    if not selected_plugins:
        logger.error("No matching plugin found")
        return
    if not any(
            selected_plugin.parse_commandline_arguments(arguments)
            for selected_plugin in selected_plugins):
        logger.error("No matching method found")
        return