monarch-initiative / pheval.exomiser

Exomiser plugin for PhEval.
4 stars 1 forks source link

11 write exomiser applicationproperties #24

Closed yaseminbridges closed 1 year ago

yaseminbridges commented 1 year ago

Implemented methods within the prepare phase of the runner implementation to write the Exomiser application.properties in the input-dir based on what is contained in the tool_specific_configurations in the config.yaml contained in the input directory.

May look to be a large PR at first glance but the changes are focused on writing the application.properties and removing clashing methods in different run steps:

  1. tool_specific_configurations.py -> Defined the fields expected in the config.yaml for creating the application.properties
  2. write_application_properties.py -> All writing methods for writing specific data locations for the application.properties, handling optional extra databases
  3. run.py -> Removed all editing methods of the application.properties as it should be properly configured in the prepare step
  4. runner.py -> Added method within the prepare step to write the application.properties
  5. test_run.py -> Removed all tests for editing the application.properties
  6. test_write_application_properties.py -> Added tests for all methods for writing the application.properties
  7. README.md -> Added pointers as to how the input directory config should be formatted
  8. poetry.lock -> added pydantic library for reading in a nested dictionary to a nested data class
  9. pyproject.toml -> added pydantic library for reading in a nested dictionary to a nested data class