Change record status: 
Project: 
Introduced in branch: 
11.3.x
Introduced in version: 
11.3.0
Description: 

When a recipe asks for input, it must contain a source element, which can be one of config, env, or value.

The config and env source elements can contain fallbacks which is helpful for when a config file is not available yet, or an environment variable does not exist.

config source example:

input_name:
  default:
    source: config
    config: ['foo.settings', 'baz']
    fallback: bar

environment source example:

input_name:
  default:
    source: env
    env: 'RUNTIME_ENVIRONMENT'
    fallback: 'DEV'

fallback allows for null:

input_name:
  default:
    source: env
    env: 'FOO'
    fallback: null

value sources remain required and can not have a fallback.

Impacts: 
Module developers
Site templates, recipes and distribution developers