Configuration as Code

An overview of Configuration As Code from my perspective and experience.

Configuration as Code is a term that describes a process for managing software.

Instead of configuring software in a Graphic User Interface (for example, changing how your software works in a web browser), you configure your software by running a executable that uses your code to define how the software should look.

Configuration is usually managed as a versioned artifact, so it's easy to understand how your software will be different if you make a change, easy to share the configuration before it's applied and easy to historically see how your software has changed.

Some examples of configuration as code:

  • Setting the value for workbench.preferredDarkColorTheme inVS Code's settings.json to a theme value

Some tools that can be used for configuring web technologies as code (note that these are primarily tools for Infrastructure as Code)

  • Terraform
  • Ansible
  • Salt

This Article is Still in Progress

This post is a work in progress and not yet complete. If you're interested in reading the full article, let me know!

Want to Read It?

Your interest helps me prioritize which articles to finish first. Click below to tell me you want to read this article when it's complete.