Paul Hammant's Blog: Infrastructure versus Config as Code
From github.com/cncf/landscape/ - where the Cloud Native Landscape Project organizes its multi-contributor thoughts.
The red boxes are mine though.
The lower group are a subset of the technologies you’d use to provision variable infrastructure, including many of the pieces elswwhere in the diagram. That is Infrastructure as Code, a now well understood thing - those Salt/Ansible/Puppet/Chef scripts are under source control - or you’re doing it very wrong.
The upper group is titled “Coordination & Service Discovery” in the diagram. Given that feature flags/toggles and other ancillary ‘live’ application/service settings should be held in the same systems, I think of the grouping as “configuration as code”, instead.
Source control isn’t the only (or even main) choice as the backing store for configurable items in that group, though. Git2consul exists for Consul, but that is not mainstream. I think it should and will be in time.
Here’s how I look at the modern stack for an application/service in an environment:
(The above pic from a previous blog entry: Provisioning, Deployment and Application Config Cycles)