diff options
Diffstat (limited to 'vicn/resource/linux/service.py')
-rw-r--r-- | vicn/resource/linux/service.py | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/vicn/resource/linux/service.py b/vicn/resource/linux/service.py index 3eb753fc..1143461a 100644 --- a/vicn/resource/linux/service.py +++ b/vicn/resource/linux/service.py @@ -21,6 +21,7 @@ import logging from vicn.core.exception import ResourceNotFound from vicn.core.resource import CategoryResource from vicn.core.task import inline_task, BashTask, EmptyTask +from vicn.core.task import inherit_parent from vicn.resource.linux.application import LinuxApplication log = logging.getLogger(__name__) @@ -51,33 +52,33 @@ class Service(LinuxApplication): __type__ = CategoryResource - + @inherit_parent @inline_task def __get__(self): raise ResourceNotFound - + def __method_restart__(self): - return BashTask(self.node, CMD_RESTART, + return BashTask(self.node, CMD_RESTART, {'service_name': self.__service_name__}) - + def __method_start__(self): return BashTask(self.node, CMD_START, {'service_name': self.__service_name__}) - - def __create__(self): - if self.__service_name__ == 'lxd': - log.warning('Not restarting LXD') - return EmptyTask() + def __method_stop__(self): + return BashTask(self.node, CMD_STOP, + {'service_name': self.__service_name__}) - if self.__service_name__ == 'dnsmasq': - return BashTask(self.node, CMD_STOP_START, - {'service_name': self.__service_name__}) + def __method_stop_start(self): + return BashTask(self.node, CMD_STOP_START, + {'service_name': self.__service_name__}) + @inherit_parent + def __create__(self): return self.__method_restart__() - + @inherit_parent def __delete__(self): - return BashTask(self.node, CMD_STOP, + return BashTask(self.node, CMD_STOP, {'service_name': self.__service_name__}) |