def _cond(key: str) -> cfgv.Conditional: return cfgv.Conditional( key, cfgv.check_string, condition_key='repo', condition_value=cfgv.NotIn(LOCAL, META), ensure_absent=True, )
def _cond(key): return cfgv.Conditional( key, cfgv.check_string, condition_key='repo', condition_value=cfgv.NotIn(_LOCAL_SENTINEL, _META_SENTINEL), ensure_absent=True, )
# manifest. *[ cfgv.OptionalNoDefault(item.key, item.check_fn) for item in MANIFEST_HOOK_DICT.items if item.key != 'id' ] ) CONFIG_REPO_DICT = cfgv.Map( 'Repository', 'repo', cfgv.Required('repo', cfgv.check_string), cfgv.RequiredRecurse('hooks', cfgv.Array(CONFIG_HOOK_DICT)), cfgv.Conditional( 'sha', cfgv.check_string, condition_key='repo', condition_value=cfgv.NotIn(_LOCAL_SENTINEL, _META_SENTINEL), ensure_absent=True, ), ) CONFIG_SCHEMA = cfgv.Map( 'Config', None, cfgv.RequiredRecurse('repos', cfgv.Array(CONFIG_REPO_DICT)), cfgv.Optional('exclude', cfgv.check_regex, '^$'), cfgv.Optional('fail_fast', cfgv.check_bool, False), ) def is_local_repo(repo_entry): return repo_entry['repo'] == _LOCAL_SENTINEL