def freeze( id: Optional[str], message: Optional[str], lifetime: int, namespaces: Collection[references.NamespacePattern], clusterwide: bool, peering_name: str, priority: int, ) -> None: """ Pause the resource handling in the operator(s). """ identity = peering.Identity(id) if id else peering.detect_own_id( manual=True) insights = references.Insights() settings = configuration.OperatorSettings() settings.peering.name = peering_name settings.peering.priority = priority return running.run(clusterwide=clusterwide, namespaces=namespaces, insights=insights, identity=identity, settings=settings, _command=peering.touch_command(insights=insights, identity=identity, settings=settings, lifetime=lifetime))
def run( __controls: CLIControls, paths: List[str], modules: List[str], peering_name: Optional[str], priority: Optional[int], standalone: Optional[bool], namespaces: Collection[references.NamespacePattern], clusterwide: bool, liveness_endpoint: Optional[str], ) -> None: """ Start an operator process and handle all the requests. """ if os.environ.get('KOPF_RUN_NAMESPACE'): # legacy for single-namespace mode namespaces = tuple(namespaces) + (os.environ.get('KOPF_RUN_NAMESPACE', ''),) if namespaces and clusterwide: raise click.UsageError("Either --namespace or --all-namespaces can be used, not both.") if __controls.registry is not None: registries.set_default_registry(__controls.registry) loaders.preload( paths=paths, modules=modules, ) return running.run( standalone=standalone, namespaces=namespaces, clusterwide=clusterwide, priority=priority, peering_name=peering_name, liveness_endpoint=liveness_endpoint, registry=__controls.registry, settings=__controls.settings, stop_flag=__controls.stop_flag, ready_flag=__controls.ready_flag, vault=__controls.vault, )