Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 12 additions & 4 deletions comfy_cli/cmdline.py
Original file line number Diff line number Diff line change
Expand Up @@ -527,10 +527,18 @@ def which():
@tracking.track_command()
def env():
check_for_updates()
_env_checker = EnvChecker()
table = _env_checker.fill_print_table()
workspace_manager.fill_print_table(table)
console.print(table)

env_data = EnvChecker().fill_print_table()

workspace_data = workspace_manager.fill_print_table()

all_data = env_data + workspace_data

ui.display_table(
data=all_data,
column_names=[":laptop_computer: Environment", "Value"],
title="Environment Information",
)


@app.command(hidden=True)
Expand Down
39 changes: 24 additions & 15 deletions comfy_cli/config_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,48 +62,57 @@ def load(self):
if not is_running(self.background[2]):
self.remove_background()

def fill_print_env(self, table):
table.add_row("Config Path", self.get_config_file_path())

def get_env_data(self):
"""
Get environment data as a list of tuples for display.

Returns:
List[Tuple[str, str]]: List of (key, value) tuples for environment data.
"""
data = []
data.append(("Config Path", self.get_config_file_path()))

launch_extras = ""
if self.config.has_option("DEFAULT", "default_workspace"):
table.add_row(
data.append((
"Default ComfyUI workspace",
self.config["DEFAULT"][constants.CONFIG_KEY_DEFAULT_WORKSPACE],
)

))
launch_extras = self.config["DEFAULT"].get(constants.CONFIG_KEY_DEFAULT_LAUNCH_EXTRAS, "")
else:
table.add_row("Default ComfyUI workspace", "No default ComfyUI workspace")
data.append(("Default ComfyUI workspace", "No default ComfyUI workspace"))

if launch_extras == "":
launch_extras = "[bold red]None[/bold red]"

table.add_row("Default ComfyUI launch extra options", launch_extras)
data.append(("Default ComfyUI launch extra options", launch_extras))

if self.config.has_option("DEFAULT", constants.CONFIG_KEY_RECENT_WORKSPACE):
table.add_row(
data.append((
"Recent ComfyUI workspace",
self.config["DEFAULT"][constants.CONFIG_KEY_RECENT_WORKSPACE],
)
))
else:
table.add_row("Recent ComfyUI workspace", "No recent run")
data.append(("Recent ComfyUI workspace", "No recent run"))

if self.config.has_option("DEFAULT", "enable_tracking"):
table.add_row(
data.append((
"Tracking Analytics",
("Enabled" if self.config["DEFAULT"]["enable_tracking"] == "True" else "Disabled"),
)
))

if self.config.has_option("DEFAULT", constants.CONFIG_KEY_BACKGROUND):
bg_info = self.background
if bg_info:
table.add_row(
data.append((
"Background ComfyUI",
f"http://{bg_info[0]}:{bg_info[1]} (pid={bg_info[2]})",
)
))
else:
table.add_row("Background ComfyUI", "[bold red]No[/bold red]")
data.append(("Background ComfyUI", "[bold red]No[/bold red]"))

return data

def remove_background(self):
del self.config["DEFAULT"]["background"]
Expand Down
25 changes: 12 additions & 13 deletions comfy_cli/env_checker.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@

import requests
from rich.console import Console
from rich.table import Table

from comfy_cli.config_manager import ConfigManager
from comfy_cli.utils import singleton
Expand Down Expand Up @@ -89,25 +88,25 @@ def check(self):
self.virtualenv_path = os.environ.get("VIRTUAL_ENV") if os.environ.get("VIRTUAL_ENV") else None
self.conda_env = os.environ.get("CONDA_DEFAULT_ENV") if os.environ.get("CONDA_DEFAULT_ENV") else None

# TODO: use ui.display_table
def fill_print_table(self):
table = Table(":laptop_computer: Environment", "Value")
table.add_row("Python Version", format_python_version(sys.version_info))
table.add_row("Python Executable", sys.executable)
table.add_row(
data = []
data.append(("Python Version", format_python_version(sys.version_info)))
data.append(("Python Executable", sys.executable))
data.append((
"Virtualenv Path",
self.virtualenv_path if self.virtualenv_path else "Not Used",
)
table.add_row("Conda Env", self.conda_env if self.conda_env else "Not Used")
))
data.append(("Conda Env", self.conda_env if self.conda_env else "Not Used"))

ConfigManager().fill_print_env(table)
config_data = ConfigManager().get_env_data()
data.extend(config_data)

if check_comfy_server_running():
table.add_row(
data.append((
"Comfy Server Running",
"[bold green]Yes[/bold green]\nhttp://localhost:8188",
)
))
else:
table.add_row("Comfy Server Running", "[bold red]No[/bold red]")
data.append(("Comfy Server Running", "[bold red]No[/bold red]"))

return table
return data
7 changes: 2 additions & 5 deletions comfy_cli/workspace_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -311,8 +311,5 @@ def save_metadata(self):
file_path = os.path.join(self.workspace_path, constants.COMFY_LOCK_YAML_FILE)
save_yaml(file_path, self.metadata)

def fill_print_table(self, table):
table.add_row(
"Current selected workspace",
f"[bold green]→ {self.workspace_path}[/bold green]",
)
def fill_print_table(self):
return [("Current selected workspace", f"[bold green]→ {self.workspace_path}[/bold green]")]
Loading