New command 'add-key'

also, fixed pep8

Change-Id: I526083d72b50dc99b7e945db8d3e95ddbb81459f
diff --git a/reclass_tools/cli.py b/reclass_tools/cli.py
index 2f1807d..898fd52 100644
--- a/reclass_tools/cli.py
+++ b/reclass_tools/cli.py
@@ -15,7 +15,6 @@
 from __future__ import print_function
 
 import argparse
-import os
 import sys
 import yaml
 
@@ -33,14 +32,22 @@
         command_method()
 
     def do_get_key(self):
-        results = walk_models.remove_reclass_parameter(
+        walk_models.remove_reclass_parameter(
             self.params.path,
             self.params.key_name,
             verbose=self.params.verbose,
             pretend=True)
 
+    def do_add_key(self):
+        walk_models.add_reclass_parameter(
+            self.params.path,
+            self.params.key_name,
+            self.params.add_value,
+            verbose=self.params.verbose,
+            merge=self.params.merge)
+
     def do_del_key(self):
-        results = walk_models.remove_reclass_parameter(
+        walk_models.remove_reclass_parameter(
             self.params.path,
             self.params.key_name,
             verbose=self.params.verbose,
@@ -62,7 +69,6 @@
         reclass_storage = reclass_models.reclass_storage(inventory=inventory)
         print('\n'.join(sorted(reclass_storage.keys())))
 
-
     def do_list_nodes(self):
         try:
             from reclass_tools import reclass_models
@@ -119,10 +125,15 @@
                                     action='store_const', const=True,
                                     help='Show verbosed output', default=False)
 
+        merge_parser = argparse.ArgumentParser(add_help=False)
+        merge_parser.add_argument('--merge', dest='verbose',
+                                  action='store_const', const=True,
+                                  help='Show verbosed output', default=False)
+
         key_parser = argparse.ArgumentParser(add_help=False)
         key_parser_help = (
-                'Key name to find in reclass model files, for example:'
-                ' parameters.linux.network.interface')
+            'Key name to find in reclass model files, for example:'
+            ' parameters.linux.network.interface')
         key_parser.add_argument('key_name', help=key_parser_help, default=None)
 
         keys_parser = argparse.ArgumentParser(add_help=False)
@@ -130,6 +141,12 @@
             'keys',
             help='Key names to find in reclass model files', nargs='*')
 
+        add_value_parser = argparse.ArgumentParser(add_help=False)
+        add_value_parser.add_argument(
+            'add_value',
+            help=('Value to add to the reclass model files, can be in the '
+                  'inline YAML format'))
+
         path_parser = argparse.ArgumentParser(add_help=False)
         path_parser.add_argument(
             'path',
@@ -175,8 +192,6 @@
             help=('YAML/JSON files with context data to render '
                   'the template'))
 
-
-
         parser = argparse.ArgumentParser(
             description="Manage virtual environments. "
                         "For additional help, use with -h/--help option")
@@ -184,13 +199,19 @@
                                            help='available commands',
                                            dest='command')
 
-        # TODO: add-class NNN [to] MMM.yml # can be used with 'render'
         subparsers.add_parser('get-key',
                               parents=[key_parser, path_parser,
                                        verbose_parser],
                               help="Find a key in YAMLs found in <path>",
                               description=("Get a key collected from "
                                            "different YAMLs"))
+        subparsers.add_parser('add-key',
+                              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 "
+                                           "different YAMLs"))
         subparsers.add_parser('del-key',
                               parents=[key_parser, path_parser,
                                        verbose_parser],