Adding add-bool-key command
The patch adds "add-bool-key" command which is
in case of passing True/False string value converts it
to bool and as a result it is passed to YAML file without
single braces
Change-Id: I8ecf9271d1e69b3379925589a1e3ef1bde664b31
diff --git a/reclass_tools/cli.py b/reclass_tools/cli.py
index cf718c8..b46f542 100644
--- a/reclass_tools/cli.py
+++ b/reclass_tools/cli.py
@@ -26,6 +26,9 @@
self.args = args
self.params = self.get_params()
+ def str2bool(self, v):
+ return v.lower() in ("true")
+
def execute(self):
command_name = 'do_{}'.format(self.params.command.replace('-', '_'))
command_method = getattr(self, command_name)
@@ -55,6 +58,16 @@
verbose=self.params.verbose,
merge=self.params.merge)
+ def do_add_bool_key(self):
+ add_val = self.str2bool(self.params.add_value)
+
+ walk_models.add_reclass_parameter(
+ self.params.path,
+ self.params.key_name,
+ add_val,
+ verbose=self.params.verbose,
+ merge=self.params.merge)
+
def do_del_key(self):
walk_models.remove_reclass_parameter(
self.params.path,
@@ -232,9 +245,19 @@
parents=[key_parser, add_value_parser,
path_parser, verbose_parser,
merge_parser],
- help="Find a key in YAMLs found in <path>",
- description=("Get a key collected from "
+ help="Add a key in YAMLs found in <path>",
+ description=("Add a key to "
"different YAMLs"))
+
+ subparsers.add_parser('add-bool-key',
+ parents=[key_parser, add_value_parser,
+ path_parser, verbose_parser,
+ merge_parser],
+ help="Add a bool key in YAMLs found in <path>. "
+ "True/False string values are converted to bool",
+ description=("Add a bool key collected to "
+ "different YAMLs"))
+
subparsers.add_parser('del-key',
parents=[key_parser, path_parser,
verbose_parser],