From d37a6a91142851a45d8588dcbf3d8a644af93eab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gina=20H=C3=A4u=C3=9Fge?= Date: Thu, 24 Nov 2016 10:55:03 +0100 Subject: [PATCH] Actually add config subcommand to CLI --- src/octoprint/cli/__init__.py | 3 ++- src/octoprint/cli/config.py | 17 ++++++++++------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/octoprint/cli/__init__.py b/src/octoprint/cli/__init__.py index 635ffc79..826ebbc0 100644 --- a/src/octoprint/cli/__init__.py +++ b/src/octoprint/cli/__init__.py @@ -123,9 +123,10 @@ from .server import server_commands from .plugins import plugin_commands from .dev import dev_commands from .client import client_commands +from .config import config_commands @click.group(name="octoprint", invoke_without_command=True, cls=click.CommandCollection, - sources=[server_commands, plugin_commands, dev_commands, client_commands]) + sources=[server_commands, plugin_commands, dev_commands, client_commands, config_commands]) @standard_options() @legacy_options @click.version_option(version=octoprint.__version__) diff --git a/src/octoprint/cli/config.py b/src/octoprint/cli/config.py index 2a1ba01b..de0250cd 100644 --- a/src/octoprint/cli/config.py +++ b/src/octoprint/cli/config.py @@ -49,6 +49,7 @@ def config_commands(): @pass_octoprint_ctx @click.pass_context def config(ctx, obj): + """Basic config manipulation.""" logging.basicConfig(level=logging.DEBUG if obj.verbosity > 0 else logging.WARN) try: obj.settings = init_settings(obj.basedir, obj.configfile) @@ -73,7 +74,7 @@ def config(ctx, obj): @pass_octoprint_ctx @click.pass_context def set_command(ctx, obj, path, value, as_bool, as_float, as_int, as_json): - """Sets the settings value at the specified path to the provided value.""" + """Sets a config path to the provided value.""" if as_json: try: value = json.loads(value) @@ -97,6 +98,7 @@ def set_command(ctx, obj, path, value, as_bool, as_float, as_int, as_json): @click.argument("path", type=click.STRING) @pass_octoprint_ctx def remove_command(obj, path): + """Removes a config path.""" _set_helper(obj.settings, path, None) @@ -107,8 +109,8 @@ def remove_command(obj, path): @click.option("--json", "as_json", is_flag=True) @pass_octoprint_ctx @click.pass_context -def append_value_command(ctx, obj, path, value, as_json): - """Appends the provided value to the settings list at the specified path.""" +def append_value_command(ctx, obj, path, value, as_json=False): + """Appends value to list behind config path.""" path = _to_settings_path(path) if as_json: @@ -137,8 +139,8 @@ def append_value_command(ctx, obj, path, value, as_json): @click.option("--json", "as_json", is_flag=True) @pass_octoprint_ctx @click.pass_context -def insert_value_command(ctx, obj, path, index, value, as_json): - """Inserts the provided value at the specified index of the settings list at the specified path""" +def insert_value_command(ctx, obj, path, index, value, as_json=False): + """Inserts value at index of list behind config key.""" path = _to_settings_path(path) if as_json: @@ -166,7 +168,8 @@ def insert_value_command(ctx, obj, path, index, value, as_json): @click.option("--json", "as_json", is_flag=True) @pass_octoprint_ctx @click.pass_context -def remove_value_command(ctx, obj, path, value, as_json): +def remove_value_command(ctx, obj, path, value, as_json=False): + """Removes value from list at config path.""" path = _to_settings_path(path) if as_json: @@ -202,7 +205,7 @@ def remove_value_command(ctx, obj, path, value, as_json): @standard_options(hidden=True) @pass_octoprint_ctx def get_command(obj, path, as_json=False, as_yaml=False, as_raw=False): - """Retrieves the value from the settings at the provided path.""" + """Retrieves value from config path.""" path = _to_settings_path(path) value = obj.settings.get(path, merged=True)