dchackett / taxi

Lightweight portable workflow management system for MCMC applications
MIT License
3 stars 1 forks source link

RunSpecification class #31

Open dchackett opened 6 years ago

dchackett commented 6 years ago

Instead of/in addition to the current run-specification scheme, where users specify the job pool and launch the taxis in an if __name__=='__main__' block, users can specify a subclass of RunSpecification. RunSpecification has a method specify_job_pool which returns the job pool to run. Then, a tool or an if __name__=='__main__' block calls the launch method of the RunSpecification subclass. Things like the pool DB path, pool name, and dispatch DB path are specified as class or instance variables. This would significantly cut down on boilerplate code, and would provide a more user-friendly way for tools to find the right files to interact with (i.e., users just point the tool at the run-spec script which defines the RunSpecification subclass, and the tool reads the relevant paths out of the subclass).