I'll keep this simple:
So, if I've got the "classic" three environments (dev/test/production), should the build script include the configurations within the deployment distribution, or is that something which should be separate and deployed separately?
Two schools of thought that I've heard:
Your artifacts should be exactly the same from environment to environment and keeping configs separate eliminates differences between deployments.
vs.
Building your configs as part of the deployment distribution is a way to test the distribution itself, and therefore, the correct approach.