Beispiel #1
0
                "The options --key and --val should always be used together")

    args.editor = load_global_config_parser().get("settings", "config_editor")
    args.config_dir = Dodo.get("/ROOT/config_dir")
    return args


if Dodo.is_main(__name__, safe=("--key" not in sys.argv)):
    try:
        args = _args()
    except configparser.NoOptionError as e:
        raise CommandError("{error}. Please check {filename}".format(
            error=str(e), filename=Paths().global_config_filename()))

    config = ConfigIO().load()

    if args.key and args.val:
        key = Key(config, args.key)
        key.set(args.val)
        ConfigIO().save(config)
        sys.exit(0)

    def add_global_config_filename(layer_paths):
        return R.concat(layer_paths, [Paths().global_config_filename()])

    x = Dodo.get_container().layers.get_ordered_layer_paths()
    x = add_global_config_filename(x)
    yaml_filenames = x

    Dodo.run(args.editor.split() + yaml_filenames, cwd=".")
Beispiel #2
0
            sys.stdout.write("%s = %s\n" % (alias.ljust(col_width), target_path))


def _add_to_layer_names(layer_names, layer_name):
    if "" in layer_names:
        return
    layer_names.add(layer_name)


if Dodo.is_main(__name__, safe=True):
    args = _args()

    if args.command:
        Dodo.run([sys.argv[0], args.command, "--help"])
    else:
        ctr = Dodo.get_container()

        command_dirs = ctr.commands.command_dirs

        layer_names_by_command_dir = defaultdict(lambda: set())
        for command_dir in command_dirs:
            layer_names = layer_names_by_command_dir[command_dir]
            _add_to_layer_names(layer_names, "")

        command_aliases = dict(ctr.commands.aliases)
        _collect_command_dirs(
            ctr.config.config,
            ctr.layers.config_io,
            layer_names_by_command_dir,
            command_aliases,
            ctr.layers.metadata_by_layer_name,