Skip to content

Commit 9161766

Browse files
Merge pull request #417 from AutomatingSciencePipeline/config-update
Update configs.py
2 parents a7fec93 + e08f073 commit 9161766

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

apps/runner/modules/configs.py

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,9 @@ def generate_config_files(experiment: ExperimentData):
121121

122122
for permutation in permutations:
123123
configItems = {}
124-
configItems.update(constants)
125124
for name, value in permutation.items():
126125
configItems[name] = value
126+
configItems.update(constants)
127127
configDict[f'config{configIdNumber}'] = ConfigData(data=configItems)
128128
explogger.info(f'Generated config {configIdNumber}')
129129
configIdNumber += 1
@@ -147,12 +147,20 @@ def create_config_from_data(experiment: ExperimentData, configNum: int):
147147
raise GladosInternalError(msg) from err
148148

149149
os.chdir('configFiles')
150-
outputConfig = configparser.ConfigParser()
151-
outputConfig.optionxform = str # type: ignore # Must use this to make the file case sensitive, but type checker is unhappy without this ignore rule
152-
outputConfig["DEFAULT"] = configData
150+
# DONE: Change to custom function to create ini file
151+
configFileLines = ["[DEFAULT]"]
152+
for line in experiment.dumbTextArea.split('\n'):
153+
configFileLines.append(line.replace('\n', ''))
154+
155+
for key, value in configData.items():
156+
if "{" + key + "}" in experiment.dumbTextArea:
157+
for i, line in enumerate(configFileLines):
158+
configFileLines[i] = line.replace("{" + key + "}", str(value))
159+
else:
160+
configFileLines.append(f"{key} = {value}")
161+
153162
with open(f'{configNum}.ini', 'w', encoding="utf8") as configFile:
154-
outputConfig.write(configFile)
155-
configFile.write(experiment.dumbTextArea)
163+
configFile.write('\n'.join(configFileLines))
156164
configFile.close()
157165
explogger.info(f"Wrote config{configNum} to a file")
158166
os.chdir('..')

0 commit comments

Comments
 (0)