summaryrefslogtreecommitdiff
path: root/reconfigure/items
diff options
context:
space:
mode:
Diffstat (limited to 'reconfigure/items')
-rw-r--r--reconfigure/items/netatalk.py2
-rw-r--r--reconfigure/items/supervisor.py5
-rw-r--r--reconfigure/items/util.py2
3 files changed, 7 insertions, 2 deletions
diff --git a/reconfigure/items/netatalk.py b/reconfigure/items/netatalk.py
index b3863d9..c4230d9 100644
--- a/reconfigure/items/netatalk.py
+++ b/reconfigure/items/netatalk.py
@@ -36,4 +36,4 @@ GlobalData.bind_property(
ShareData.bind_name('name')
ShareData.bind_attribute('comment', 'comment', path=lambda x: x.get('path'), default='')
for f, d in zip(ShareData.fields, ShareData.defaults):
- ShareData.bind_property(f, f.replace(' ', '_'), default=d)
+ ShareData.bind_property(f, f.replace(' ', '_'), default=d, default_remove=[d, None])
diff --git a/reconfigure/items/supervisor.py b/reconfigure/items/supervisor.py
index b1d201c..a7d2c07 100644
--- a/reconfigure/items/supervisor.py
+++ b/reconfigure/items/supervisor.py
@@ -1,5 +1,6 @@
from reconfigure.nodes import Node, PropertyNode
from reconfigure.items.bound import BoundData
+from reconfigure.items.util import tf_getter, tf_setter
class SupervisorData (BoundData):
@@ -8,7 +9,7 @@ class SupervisorData (BoundData):
class ProgramData (BoundData):
fields = ['command', 'autostart', 'autorestart', 'startsecs', 'startretries', \
- 'user', 'directory', 'umask', 'environment']
+ 'user', 'directory', 'umask', 'environment', 'stopasgroup', 'killasgroup']
def template(self):
return Node('program:new',
@@ -21,3 +22,5 @@ ProgramData.bind_name('name', getter=lambda x: x[8:], setter=lambda x: 'program:
ProgramData.bind_attribute('comment', 'comment')
for i in range(0, len(ProgramData.fields)):
ProgramData.bind_property(ProgramData.fields[i], ProgramData.fields[i], default_remove=[None, ''])
+ProgramData.bind_property('stopasgroup', 'stopasgroup', default_remove=[False], getter=tf_getter, setter=tf_setter)
+ProgramData.bind_property('killasgroup', 'killasgroup', default_remove=[False], getter=tf_getter, setter=tf_setter)
diff --git a/reconfigure/items/util.py b/reconfigure/items/util.py
index adb0902..94f8b0e 100644
--- a/reconfigure/items/util.py
+++ b/reconfigure/items/util.py
@@ -1,4 +1,6 @@
yn_getter = lambda x: x == 'yes'
yn_setter = lambda x: 'yes' if x else 'no'
+tf_getter = lambda x: x == 'true'
+tf_setter = lambda x: 'true' if x else 'false'
onezero_getter = lambda x: x == '1'
onezero_setter = lambda x: '1' if x else '0'