Re: [PATCH] Minor fix for show hardware

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2007-12-04 at 10:52 -0500, Michael DeHaan wrote:
> James Antill wrote:

> >  Well there's a _lot_ of info. that is returned by "show hardware" that
> > isn't one of the three options it currently has. Maybe changing the
> > interface to:
> >
> > func '*' show hardware os
> > func '*' show hardware systemMemory
> > func '*' show hardware systemSwap
> >
> > ...etc. to get specific information, if you want I can do a patch for
> > that today?
> >
> >   
> If you like, sure!

 Here you go, I also changed the func.pod but obviously the Wiki is
still wrong, usage is:

func * show hardware
func * show hardware systemMemory
func * show hardware os selinux_enabled selinux_enforce blah

...note that "blah" is just ignored.

-- 
James Antill <james@xxxxxxxxxxxxxxxxx>
diff --git a/docs/func.pod b/docs/func.pod
index 7d5684a..ead976d 100644
--- a/docs/func.pod
+++ b/docs/func.pod
@@ -74,9 +74,9 @@ not going through the Python API (where you would not care).
 
 func "*.example.org" show hardware --help
 
-func "*.example.org" show hardware --memory
+func "*.example.org" show hardware systemMemory
 
-func "*.example.org" show hardware --os
+func "*.example.org" show hardware os
 
 Another useful helper command module is copyfile, which allows func to work like scp from 
 the shell, though it can address multiple systems at the same time.  
diff --git a/func/overlord/cmd_modules/show.py b/func/overlord/cmd_modules/show.py
index 22bac95..9582e0d 100644
--- a/func/overlord/cmd_modules/show.py
+++ b/func/overlord/cmd_modules/show.py
@@ -35,12 +35,6 @@ class ShowHardware(client.command.Command):
         self.parser.add_option("-v", "--verbose", dest="verbose",
                                action="store_true")
         self.parser.add_option("-p", "--port", dest="port")
-        self.parser.add_option("", "--platform", dest="platform",
-                               action="store_true")
-        self.parser.add_option("", "--memory", dest="memory",
-                               action="store_true")
-        self.parser.add_option("","--os", dest="os",
-                               action="store_true")
 
 
     def handleOptions(self, options):
@@ -67,35 +61,17 @@ class ShowHardware(client.command.Command):
         # if the user 
         top_options = ["port","verbose"]
         
-        # figure out of the user set any options we care about
-        options_set = False
-
-        #ugh, cant find a better way to do this. Look for args
-        # that specify a "mode", if we set them, then don't
-        # do the big dump
-
-        # also, optparse is annoying -akl
-        opt_list = ["--platform", "--memory", "--os"]
-        for opt in opt_list:
-            if self.parser.has_option(opt):
-                options_set = True
-        
-
         for minion in results:
             print "%s:" % minion
             minion_data = results[minion]
-            if not options_set:
+            # if user set no args
+            if not args:
                 pprint.pprint(minion_data)
                 continue
             
-            if self.options.platform:
-                print minion_data['platform']
-
-            if self.options.memory:
-                print minion_data["systemMemory"]
-
-            if self.options.os:
-                print minion_data["os"]
+            for arg in args:
+                if arg in minion_data:
+                    print minion_data[arg]
 
 class Show(client.command.Command):
     name = "show"

[Index of Archives]     [Fedora Users]     [Linux Networking]     [Fedora Legacy List]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux