diff options
author | John Eckersberg <jeckersb@redhat.com> | 2008-02-15 15:26:03 -0500 |
---|---|---|
committer | John Eckersberg <jeckersb@redhat.com> | 2008-02-15 15:26:03 -0500 |
commit | 6ea715dcb3f35da06ba99d981e738f5de83f9399 (patch) | |
tree | 3ccf53ed079a1236fed72018bdcb3aead5db3ce7 /func | |
parent | 444653722774e94f2015d9c57f43a7158636620c (diff) | |
download | func-6ea715dcb3f35da06ba99d981e738f5de83f9399.tar.gz func-6ea715dcb3f35da06ba99d981e738f5de83f9399.tar.xz func-6ea715dcb3f35da06ba99d981e738f5de83f9399.zip |
add netapp.options module
Diffstat (limited to 'func')
-rw-r--r-- | func/minion/modules/netapp/options.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/func/minion/modules/netapp/options.py b/func/minion/modules/netapp/options.py new file mode 100644 index 0000000..f1e28ed --- /dev/null +++ b/func/minion/modules/netapp/options.py @@ -0,0 +1,55 @@ +## +## NetApp Filer 'options' Module +## +## Copyright 2008, Red Hat, Inc +## John Eckersberg <jeckersb@redhat.com> +## +## This software may be freely redistributed under the terms of the GNU +## general public license. +## +## You should have received a copy of the GNU General Public License +## along with this program; if not, write to the Free Software +## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +## + +from func.minion.modules import func_module +from func.minion.modules.netapp.common import * + +class Options(func_module.FuncModule): + + # Update these if need be. + version = "0.0.1" + api_version = "0.0.1" + description = "Interface to the 'options' command" + + def get(self, filer, filter=''): + """ + TODO: Document me ... + """ + cmd_opts = ['options', filter] + output = ssh(filer, cmd_opts) + if 'No such option' in output: + return output.strip() + + result = {} + for line in output.split('\n'): + if not line: continue + tokens = line.split() + try: + result[tokens[0]] = tokens[1] + except: + result[tokens[0]] = '' + + return result + + def set(self, filer, option, value): + """ + TODO: Document me ... + """ + cmd_opts = ['options', option, value] + output = ssh(filer, cmd_opts) + # should return no output (maybe a space or newline) + return check_output("^\s*$", output) + + + |