Within a Stackctl-controlled directories, templates/ are how you share patterns between concrete stacks/. You might have templates/s3-bucket.yaml that encodes your organization's preferred way to create S3 Buckets, configure and secure them, then many stacks/... can use that same template, supply some Parameters, and receive all that institutional knowledge as it evolves, for free.
This of course requires templates/ to live alongside stacks/, which works fine with a single infra repository. But there is value in stacks/ living alongside the apps they support, being owned by other teams, in other repositories. This works great, but you risk duplicating templates/ when multiple such use-cases deploy similar resources.
So I'd like to explore the design space of loading Templates from a central location. Suggestions welcome.
Within a Stackctl-controlled directories,
templates/are how you share patterns between concretestacks/. You might havetemplates/s3-bucket.yamlthat encodes your organization's preferred way to create S3 Buckets, configure and secure them, then manystacks/...can use that same template, supply some Parameters, and receive all that institutional knowledge as it evolves, for free.This of course requires
templates/to live alongsidestacks/, which works fine with a singleinfrarepository. But there is value instacks/living alongside the apps they support, being owned by other teams, in other repositories. This works great, but you risk duplicatingtemplates/when multiple such use-cases deploy similar resources.So I'd like to explore the design space of loading Templates from a central location. Suggestions welcome.