With the rising number of commands and scripts, I think it's time that cluster utils gets a proper commandline interface.
For example...
cluster grid <settings_file>
cluster hp <settings_file>
cluster generate_report <path_to_jobs>
The commandline interface can also expose proper helper strings, which would help new (and old) users.
Implementation-wise, we can rename scripts/ to cli/ and move grid_search.py and hp_optimization.py in there. This also would help code organization a bit, as all entry points are in one place. We then should move away from using read_params_from_cmdline to parse the arguments, instead moving to a standard argparse implementation. Optimally, we would then expose all settings in the config file as argparse options, but this seems like quite some work. However, I think it would also increase convenience, code quality, and lowering the barriers of entry quite a bit.
With the rising number of commands and scripts, I think it's time that cluster utils gets a proper commandline interface.
For example...
The commandline interface can also expose proper helper strings, which would help new (and old) users.
Implementation-wise, we can rename
scripts/
tocli/
and movegrid_search.py
andhp_optimization.py
in there. This also would help code organization a bit, as all entry points are in one place. We then should move away from usingread_params_from_cmdline
to parse the arguments, instead moving to a standardargparse
implementation. Optimally, we would then expose all settings in the config file as argparse options, but this seems like quite some work. However, I think it would also increase convenience, code quality, and lowering the barriers of entry quite a bit.By @mseitzer (imported from GitLab)