Infrastructure as Data

Better than Infrastructure as Code because it prevents you from relying on configuration that can’t be statically analyzed. Configuration should ideally not be turing complete, and declarative infrastructure is really just a configuration for a wider context than a single application.

Consequently, Infrastructure as Data and Configuration as Data are similar (if not identical) principles. The difference really comes down to the scope you hold implicitly in your head. Configuration is often implicitly scoped to a single application or single environment; Infrastructure is often implicitly scoped to be “the everything” and isn’t configured by Developers, but rather Ops.