NTD-Modelling-Consortium / ntd-model-sch

NTD SCH model
MIT License
0 stars 6 forks source link

Standardise installation, packaging and execution configuration #38

Closed tlestang closed 3 months ago

tlestang commented 3 months ago

This PR makes the package configuration conform with latest Python packaging standards and conventional workflows.

Currently, the README prescribes the use of pipenv for installing the SCH package, with the package configuration and metadata defined in a setup.py and Pipfile files.

The driver script sch_run.py can be made a regular command by specifying an entry point. It's content is migrated into a new module main.py. Installing the package installs a command run_sch which executes main.main().

$ run_sch --help
usage: run_sch [-h] [-p {high-adult-burden,low-adult-burden}] [-d {WHOGeneric,UgandaRural,KenyaKDHS,Flat}]

NTDMC SCH model command line interface

options:
  -h, --help            show this help message and exit
  -p {high-adult-burden,low-adult-burden}, --parameter-set {high-adult-burden,low-adult-burden}
                        The set of simulation parameters
  -d {WHOGeneric,UgandaRural,KenyaKDHS,Flat}, --demog-name {WHOGeneric,UgandaRural,KenyaKDHS,Flat}
                        Name of demography to simulate for

for example:

run_sch -p high-adult-burden -d UgandaRural
tlestang commented 3 months ago

The project changed so much following #42, it is probably easier to start again.