async def async_stop(root_path: Path, group: str, stop_daemon: bool) -> int: from chia.daemon.client import connect_to_daemon_and_validate daemon = await connect_to_daemon_and_validate(root_path) if daemon is None: print("Couldn't connect to chia daemon") return 1 if stop_daemon: r = await daemon.exit() await daemon.close() print(f"daemon: {r}") return 0 return_val = 0 for service in services_for_groups(group): print(f"{service}: ", end="", flush=True) if not await daemon.is_running(service_name=service): print("Not running") elif await daemon.stop_service(service_name=service): print("Stopped") else: print("Stop failed") return_val = 1 await daemon.close() return return_val
async def async_start(root_path: Path, group: str, restart: bool) -> None: daemon = await create_start_daemon_connection(root_path) if daemon is None: print("Failed to create the chia daemon") return None for service in services_for_groups(group): if await daemon.is_running(service_name=service): print(f"{service}: ", end="", flush=True) if restart: if not await daemon.is_running(service_name=service): print("not running") elif await daemon.stop_service(service_name=service): print("stopped") else: print("stop failed") else: print("Already running, use `-r` to restart") continue print(f"{service}: ", end="", flush=True) msg = await daemon.start_service(service_name=service) success = msg and msg["data"]["success"] if success is True: print("started") else: error = "no response" if msg: error = msg["data"]["error"] print(f"{service} failed to start. Error: {error}") await daemon.close()