def decorator( # lgtm[py/similar-function] fn: callbacks.ResourceDaemonFn, ) -> callbacks.ResourceDaemonFn: _warn_conflicting_values(field, value) _verify_filters(labels, annotations) real_registry = registry if registry is not None else registries.get_default_registry() real_field = dicts.parse_field(field) or None # to not store tuple() as a no-field case. real_id = registries.generate_id(fn=fn, id=id, suffix=".".join(real_field or [])) selector = references.Selector( __group_or_groupversion_or_name, __version_or_name, __name, group=group, version=version, kind=kind, plural=plural, singular=singular, shortcut=shortcut, category=category, ) handler = handlers.ResourceDaemonHandler( fn=fn, id=real_id, param=param, errors=errors, timeout=timeout, retries=retries, backoff=backoff, selector=selector, labels=labels, annotations=annotations, when=when, field=real_field, value=value, initial_delay=initial_delay, requires_finalizer=True, cancellation_backoff=cancellation_backoff, cancellation_timeout=cancellation_timeout, cancellation_polling=cancellation_polling, ) real_registry._resource_spawning.append(handler) return fn
def decorator( # lgtm[py/similar-function] fn: callbacks.ResourceDaemonFn, ) -> callbacks.ResourceDaemonFn: _warn_deprecated_signatures(fn) _warn_deprecated_filters(labels, annotations) _warn_conflicting_values(field, value) real_registry = registry if registry is not None else registries.get_default_registry( ) real_field = dicts.parse_field( field) or None # to not store tuple() as a no-field case. real_id = registries.generate_id(fn=fn, id=id) selector = references.Selector(group, version, plural) handler = handlers.ResourceDaemonHandler( fn=fn, id=real_id, errors=errors, timeout=timeout, retries=retries, backoff=backoff, cooldown=cooldown, selector=selector, labels=labels, annotations=annotations, when=when, field=real_field, value=value, initial_delay=initial_delay, requires_finalizer=True, cancellation_backoff=cancellation_backoff, cancellation_timeout=cancellation_timeout, cancellation_polling=cancellation_polling, ) real_registry.resource_spawning_handlers.append(handler) return fn
def decorator( fn: callbacks.ResourceDaemonFn) -> callbacks.ResourceDaemonFn: _warn_deprecated_signatures(fn) _warn_deprecated_filters(labels, annotations) real_registry = registry if registry is not None else registries.get_default_registry( ) real_resource = resources.Resource(group, version, plural) real_id = registries.generate_id(fn=fn, id=id) handler = handlers.ResourceDaemonHandler( fn=fn, id=real_id, errors=errors, timeout=timeout, retries=retries, backoff=backoff, cooldown=cooldown, labels=labels, annotations=annotations, when=when, initial_delay=initial_delay, requires_finalizer=True, #TODO: requires_finalizer? "optional"? cancellation_backoff=cancellation_backoff, cancellation_timeout=cancellation_timeout, cancellation_polling=cancellation_polling, ) real_registry.resource_spawning_handlers[real_resource].append(handler) return fn