This repository was archived by the owner on Sep 25, 2020. It is now read-only.

Description
Currently we have
- common.json
- production.json
- production.{dc}.json
as an a deep extend inheritance tree. where production overwrites common.
It would be a lot easier to reason about our production dependencies if we had
- production.json
- production.{dc}.json
Where production.{dc}.json overwrites production.
To reduce duplication for development and local environments we can have
- production.json
- local.json
and
- production.json
- development.json
If you have any configurations that are different locally or in development you can turn them off either by changing the value or setting it to null.
This encourages people to treat production.json as the source of truth and to make their local and development environments be as close to production as possible.
To avoid doing NODE_ENV=local in tests, unit tests and when running your application locally we should default NODE_ENV to the string local if it's unset.