Skip to content

Do we want to provide a processor-based template (as well)? #11

Open
@jhkennedy

Description

@jhkennedy

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:

  • hyp3-gamma produces RTC (was hyp3-rtc-gamma) and InSAR (was hyp3-insar-gamma) products
  • asf-tools produces water map and flood map products
  • DockerizedTopsApp creates GUNW SLC and Burst SLC products

Supporting multiple products is typically done via a python entry points and argparse trick. Similarly,

  • RAiDER only provides one HyP3 entry point but does provide others as it was an existing tool we added support to

We could:

  1. Always include the basic entry point + argparse setup for multiple plugins (overly complicated and likely confusing when not needed), or
  2. Provide both templates via: https://cookiecutter.readthedocs.io/en/stable/advanced/directories.html
  3. Ask how many products this plugin will make (now, or later) and conditionally add in the entry point + argparse setup
  4. Just document the entry point + argparse setup

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions