def _setup_config_manager(self, jobs_string, extra_value_source=None):
mock_logging = mock.Mock()<EOL>required_config = app.CronTabber.get_required_config()<EOL>required_config.add_option('<STR_LIT>', default=mock_logging)<EOL>value_source = [<EOL>configman.ConfigFileFutureProxy,<EOL>environment,<EOL>{<EOL>'<STR_LIT>': mock_logging,<EOL>'<STR_LIT>': jobs_string,<EOL>'<STR_LIT>': False,<EOL>},<EOL>extra_value_source,<EOL>]<EOL>if extra_value_source is None:<EOL><INDENT>pass<EOL><DEDENT>elif isinstance(extra_value_source, basestring):<EOL><INDENT>value_source.append(extra_value_source)<EOL><DEDENT>elif isinstance(extra_value_source, Sequence):<EOL><INDENT>value_source.extend(extra_value_source)<EOL><DEDENT>elif isinstance(extra_value_source, Mapping):<EOL><INDENT>value_source.append(extra_value_source)<EOL><DEDENT>config_manager = configman.ConfigurationManager(<EOL>[required_config],<EOL>values_source_list=value_source,<EOL>app_name='<STR_LIT>',<EOL>app_description=__doc__,<EOL>)<EOL>return config_manager<EOL>
setup and return a configman.ConfigurationManager and a the
        crontabber json file.
            jobs_string - a formatted string list services to be offered
            config - a string representing a config file OR a mapping of
                     key/value pairs to be used to override config defaults or
                     a list of any of the previous
            extra_value_source - supplemental values required by a service