ahenk deamon

This commit is contained in:
İsmail Başaran 2016-02-08 19:03:38 +02:00
parent 86484d114c
commit 49f638ddee
4 changed files with 44 additions and 46 deletions

View file

@ -2,4 +2,48 @@
# -*- coding: utf-8 -*-
# Author: İsmail BAŞARAN <ismail.basaran@tubitak.gov.tr> <basaran.ismaill@gmail.com>
from base.config.ConfigManager import ConfigManager
from base.deamon.BaseDeamon import BaseDeamon
from base.logging.AhenkLogger import Logger
import sys,logging
class AhenkDeamon(BaseDeamon):
"""docstring for AhenkDeamon"""
def __init__(self, arg):
super(AhenkDeamon, self).__init__()
self.arg = arg
if __name__ == '__main__':
configFilePath='/etc/ahenk/ahenk.conf'
configfileFolderPath='/etc/ahenk/config.d/'
pidfilePath='/var/run/ahenk.pid'
configManager = ConfigManager(configFilePath,configfileFolderPath)
config = configManager.read()
logger = Logger('/tmp/ahenk.log',logging.DEBUG)
logger.info("obaraaa")
"""
deamon = AhenkDeamon(pidfilePath)
if len(sys.argv) == 2:
if sys.argv[1] == "start":
deamon.start()
elif sys.argv[1] == 'stop':
deamon.stop()
elif sys.argv[1] == 'restart':
deamon.restart()
elif sys.argv[1] == 'status':
# print status
pass
else:
print 'Unknown command. Usage : %s start|stop|restart|status' % sys.argv[0]
sys.exit(2)
sys.exit(0)
else:
print 'Usage : %s start|stop|restart|status' % sys.argv[0]
sys.exit(2)
"""

View file

View file

@ -1,46 +0,0 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Author: İsmail BAŞARAN <ismail.basaran@tubitak.gov.tr> <basaran.ismaill@gmail.com>
import ConfigParser,os
from os import listdir
from os.path import isfile, join
class ConfigurationHelper(object):
"""
This class written for configuration file management of ahenk and ahenk plugins
Sample ahenk configuration file path /etc/ahenk/ahenk.conf and sample ahenk plugins configuration folder path /etc/ahenk/config.d/
Takes two argument, - both of them are optional - one of the is a configuration file path the other one is configuration files folder path
"""
def __init__(self, configurationFilePath=None, configurationFolderPath=None):
super(ConfigurationHelper, self).__init__()
self.configurationFilePath = configurationFilePath
self.configurationFolderPath = configurationFolderPath
def read(self):
configFiles = []
# Check if given ahenk configuration file exists
# If file exists add it to configFiles array.
if self.configurationFilePath:
if os.path.exists(self.configurationFilePath):
configFiles.append(self.configurationFilePath)
if self.configurationFolderPath and os.path.exists(self.configurationFolderPath):
files = [f for f in listdir(self.configurationFolderPath) if isfile(join(self.configurationFolderPath, f))]
for f in files:
configFiles.append(f)
parser = SafeConfigParser()
configValues = parser.read(configFiles)
return configValues

View file