MeltanoLabs / Meta

The why, what, and how of MeltanoLabs
MIT License
5 stars 1 forks source link

feat: add common workflow for taps and targets #33

Open aaronsteers opened 1 year ago

aaronsteers commented 1 year ago

This takes the dynamic versioning publish workflow from target-snowflake and makes it available as a shared workflow for other repositories.

aaronsteers commented 1 year ago

@kgpayne and @WillDaSilva - This is a quick proof of concept of where I'd like to go with common (aka "required" workflows) across MeltanoLabs taps and targets.

In a single place, I'd like to have workflows which manage the basic functions of PR validation, release drafting, and release publishing.

Note: per each workflow and repo, the behavior is 'opt in'. I've given you both Admin access so you should be able to maintain the settings via this screen.

image

While I understand this sacrifices control, it reduces overall surface area to maintain by at least one or two orders of magnitude. With specific expectations and assumptions established ahead of time, we should be able to iterate on improvements from a single location, and benefit all "opted-in" repos simultaneously. The savings of applying and maintaining changes across 20-40 repos' workflows independently is well worth the tradeoff (pending unseen blockers/issues), and will keep our practices uniform and streamlined.

Knowing at the same time that there may be sharp edges and/or learnings to have along the way, I'd like to start this with 4-5 repos that each have similar 'status quo'; for instance, we could start with those which are already configured for dynamic versioning. Wdyt?

cc @pnadolny13

WillDaSilva commented 1 year ago

image

Deleting my suggestion had an unintended side-effect @edgarrmondragon