meltano / hub

The single source of truth for all Meltano plugins, including all available Singer Taps and Targets: https://hub.meltano.com
https://hub.meltano.com
50 stars 68 forks source link

Move non-plugin definition keys under a `hub` key #610

Open tayloramurphy opened 2 years ago

tayloramurphy commented 2 years ago

Discussed in https://github.com/meltano/hub/discussions/609

Originally posted by **pnadolny13** June 15, 2022 As part of the 2.0 release upgrades to the hub which included a full refactor of the definition file format we added some new keys that are for rendering documentation. I'm proposing that we move those under something like a `docs` or `meltanohub` key so that its clean and clear what parts are plugin definition attributes and should be returned via the API to be stored in lock files vs what should simply be extra metadata for the hub. For example [tap-adwords usage](https://github.com/meltano/hub/blob/82a4019c9c464d7db54ad3b6492a08317e77b7c1/_data/meltano/extractors/tap-adwords/singer-io.yml#L273) metadata key for the hub docs content is in the definition file. Then in the [API payload generator](https://github.com/meltano/hub/blob/82a4019c9c464d7db54ad3b6492a08317e77b7c1/_plugins/meltano_json_generator.rb#L70) we exclude them. The keys are: - keywords - maintenance_status - domain_url - definition - next_steps - settings_preamble - usage - prereq The new schema would be something like: ```yaml name: tap-adwords label: Google Ads description: Advertising Platform ... hub: domain_url: x usage: y prereq: z ... ``` cc @tayloramurphy @aaronsteers @DouweM @alexmarple @z3z1ma

Spec proposal

aaronsteers commented 2 years ago

@tayloramurphy - I'm not quite ready to move forward on this and wanted to propose some changes. I'll drop my comments in the linked discussion so it's all in one place.