def includeme(configurator):
    """
    Add yaml configuration utilities.

    :param pyramid.config.Configurator configurator: pyramid's app configurator
    """
    settings = configurator.registry.settings

    # lets default it to running path
    yaml_locations = settings.get('yaml.location',
                                  settings.get('yml.location', os.getcwd()))

    configurator.add_directive('config_defaults', config_defaults)

    configurator.config_defaults(yaml_locations)

    # reading yml configuration

    if configurator.registry['config']:
        config = configurator.registry['config']
        log.debug('Yaml config created')

        # extend settings object
        if 'configurator' in config and config.configurator:
            _extend_settings(settings, config.configurator)

        # run include's
        if 'include' in config:
            _run_includemes(configurator, config.include)

    # let's calla a convenience request method
    configurator.add_request_method(
        lambda request: request.registry['config'],
        name='config', property=True
    )
Add yaml configuration utilities.

    :param pyramid.config.Configurator configurator: pyramid's app configurator