summaryrefslogtreecommitdiffstats
path: root/func
diff options
context:
space:
mode:
Diffstat (limited to 'func')
-rw-r--r--func/minion/modules/func_module.py10
-rw-r--r--func/minion/modules/test.py11
2 files changed, 19 insertions, 2 deletions
diff --git a/func/minion/modules/func_module.py b/func/minion/modules/func_module.py
index a405198..6985164 100644
--- a/func/minion/modules/func_module.py
+++ b/func/minion/modules/func_module.py
@@ -11,6 +11,7 @@
##
import inspect
+import os
from func import logger
from certmaster.config import read_config, BaseConfig
@@ -48,10 +49,15 @@ class FuncModule(object):
self.logger = log.logger
def __init_options(self):
- options_file = '/etc/func/modules/'+self.__class__.__name__+'.conf'
- self.options = read_config(options_file, self.Config)
+ self.options_file = '/etc/func/modules/'+self.__class__.__name__+'.conf'
+ self.options = read_config(self.options_file, self.Config)
return
+ def save_config(self):
+ fh = open(self.options_file, 'w')
+ self.options.write(fh)
+ return True
+
def register_rpc(self, handlers, module_name):
# add the internal methods, note that this means they
# can get clobbbered by subclass versions
diff --git a/func/minion/modules/test.py b/func/minion/modules/test.py
index 2103042..efcfde6 100644
--- a/func/minion/modules/test.py
+++ b/func/minion/modules/test.py
@@ -47,6 +47,17 @@ class Test(func_module.FuncModule):
"""
return self.options
+ def config_save(self):
+ """
+ Saves the options config
+ """
+ self.save_config()
+ return self.options
+
+ def config_set(self, key_name, value):
+ setattr(self.options,key_name, value)
+ self.save_config()
+ return self.options
def register_method_args(self):