summaryrefslogtreecommitdiffstats
path: root/func
diff options
context:
space:
mode:
authorJohn Eckersberg <jeckersb@redhat.com>2008-02-15 15:26:03 -0500
committerJohn Eckersberg <jeckersb@redhat.com>2008-02-15 15:26:03 -0500
commit6ea715dcb3f35da06ba99d981e738f5de83f9399 (patch)
tree3ccf53ed079a1236fed72018bdcb3aead5db3ce7 /func
parent444653722774e94f2015d9c57f43a7158636620c (diff)
downloadthird_party-func-6ea715dcb3f35da06ba99d981e738f5de83f9399.tar.gz
third_party-func-6ea715dcb3f35da06ba99d981e738f5de83f9399.tar.xz
third_party-func-6ea715dcb3f35da06ba99d981e738f5de83f9399.zip
add netapp.options module
Diffstat (limited to 'func')
-rw-r--r--func/minion/modules/netapp/options.py55
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)
+
+
+