Open jhkennedy opened 1 year ago
My preference here is to add documentation to the repo on how to implement the entrypoint + argparse setup. While we have a fair number of plugins that implement this, I don't think the added complexity is worth having it as an option in the basic setup. Also, I think many other projects could benefit from this documentation outside of HyP3. I know I would enjoy having it as a reference.
Number two could also be nice, but it would introduce a ton of code duplication.
I think I also lean just documentation (4). Notably with (2), you can soft-link shared files so that there isn't be a ton of code duplication, but I do think softlinks are the messiest way to do that and I'm not a huge fan of that approach.
Right now, the cookiecutter assumes we're making a plugin that will run one process (workflow) and create one type of product.
This is how hyp3-autorift is organized and how we historically made plugins, but we've moved to a more "processor" based plugin for most of our plugins:
Supporting multiple products is typically done via a python entry points and argparse trick. Similarly,
We could: