layerform icon indicating copy to clipboard operation
layerform copied to clipboard

General questions

Open foragerr opened this issue 10 months ago • 2 comments

Awesome stuff! This seems like a neat approach to bring ownership boundaries into a Terraform codebase 👍

I have some general questions (disclaimer: I've read about Layerform but haven't tried it yet, just skimmed a blog post and the readme.md):

  • Why not use "ephemeral"?

    You mention "ephemeral environments" in blog posts - but in layerform docs, it seems to always be multiple "staging" environments - Is there a reason you're steering clear of the term "ephemeral"? What sets Layerform's layers apart from what's typically considered ephemeral environments in your view?

  • When the base layer runs, does it also run all the layers above it? Thoughts on How to deal with potential breakages in upper layers?

    Using the example from docs, if the core team updates the EKS cluster, and runs layerform spawn, Will that also run all the layers above it, so they inherit any changes from the cluster apply?

  • Are random id's managed in terraform via discipline

    In order to be able to deploy additional "staging" layers, resource names should have random strings in them to prevent clashes. Is this random naming completely hand-managed through dev-discipline? Do you have any thoughts about layerform features that would either tack on random strings or at least detect and warn about names that would potentially collide?

  • To further enforce ownership boundaries, Can each layer live in a separate git repo?

    Reasons to do this, reasons to never do this?

  • Use ephemeral layers as a means to enable Blue/Green deployments?

    Do you see a path towards, say standing up a "to-be-prod" layer in parallel to a "prod" layer and after completing testing/verification, making the "to-be-prod" the default layer?

Looking forward to hearing your insights!

foragerr avatar Aug 31 '23 18:08 foragerr