Реализовал возможность задавать путь к файлу с настройками через параметры к скрипту
This commit is contained in:
parent
00c5f0f03e
commit
78c8568855
|
|
@ -78,7 +78,11 @@ class TaskRunner:
|
|||
if __name__ == "__main__":
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
overrideArgs = parser.parse_known_args()[1]
|
||||
parser.add_argument('--settings', required=False)
|
||||
allArgs = parser.parse_known_args()
|
||||
|
||||
knownArgs = allArgs[0]
|
||||
overrideArgs = allArgs[1]
|
||||
|
||||
# компоную препроцессор для индивидуальной обработки строк (удаление комментариев и ведущих пробельных символов)
|
||||
lineStripper = Stripper()
|
||||
|
|
@ -88,7 +92,7 @@ if __name__ == "__main__":
|
|||
linePreprocessor.addProcessor(lineStripper)
|
||||
|
||||
# TODO: перенести в корень комапановки
|
||||
settingsPath = 'scripts/settings.txt'
|
||||
settingsPath = knownArgs.settings or 'settings.txt'
|
||||
fromFileSettingsProvider = FromFileSettingsProvider(settingsPath, linePreprocessor)
|
||||
overrideWithCmdSetProvider = CmdArgsOverriderSettingsProvider(fromFileSettingsProvider, overrideArgs, linePreprocessor)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import os
|
||||
from Core.SettingsProviderBase import SettingsProviderBase
|
||||
from parsers.SettingsParser.SettingsParser import SettingsParser
|
||||
|
||||
|
|
@ -13,6 +14,12 @@ class FromFileSettingsProvider(SettingsProviderBase):
|
|||
self.compositeLineProcessor = compositeLineProcessor
|
||||
|
||||
def fetchSettings(self):
|
||||
if not os.path.exists(self.pathToSettings):
|
||||
raise Exception('settings file {0} not found'.format(self.pathToSettings))
|
||||
|
||||
if not os.path.isfile(self.pathToSettings):
|
||||
raise Exception('{0} is not a file'.format(self.pathToSettings))
|
||||
|
||||
settingsFile = open(self.pathToSettings)
|
||||
content = settingsFile.read()
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue