Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
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: 13 additions & 3 deletions comfy_cli/cmdline.py
Original file line number Diff line number Diff line change
Expand Up @@ -528,9 +528,19 @@ def which():
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 = _env_checker.fill_print_table()
Comment thread
bigcat88 marked this conversation as resolved.
Outdated

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",
)

Comment thread
neverbiasu marked this conversation as resolved.


@app.command(hidden=True)
Expand Down
42 changes: 28 additions & 14 deletions comfy_cli/config_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,47 +63,61 @@ def load(self):
self.remove_background()

def fill_print_env(self, table):
table.add_row("Config Path", self.get_config_file_path())
env_data = self.get_env_data()
Comment thread
bigcat88 marked this conversation as resolved.
Outdated

for key, value in env_data:
table.add_row(key, value)

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: 13 additions & 12 deletions comfy_cli/env_checker.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@

from comfy_cli.config_manager import ConfigManager
from comfy_cli.utils import singleton
from comfy_cli import ui
Comment thread
neverbiasu marked this conversation as resolved.
Outdated

console = Console()

Expand Down Expand Up @@ -89,25 +90,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
8 changes: 5 additions & 3 deletions comfy_cli/workspace_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -311,8 +311,10 @@ 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(
def fill_print_table(self):
data = []
data.append((
Comment thread
bigcat88 marked this conversation as resolved.
Outdated
"Current selected workspace",
f"[bold green]→ {self.workspace_path}[/bold green]",
)
))
return data