Some checks failed
Python Linting / Run Ruff (push) Has been cancelled
Python Linting / Run Pylint (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Has been cancelled
Execution Tests / test (macos-latest) (push) Has been cancelled
Execution Tests / test (ubuntu-latest) (push) Has been cancelled
Execution Tests / test (windows-latest) (push) Has been cancelled
Test server launches without errors / test (push) Has been cancelled
Unit Tests / test (macos-latest) (push) Has been cancelled
Unit Tests / test (ubuntu-latest) (push) Has been cancelled
Unit Tests / test (windows-2022) (push) Has been cancelled
Includes 30 custom nodes committed directly, 7 Civitai-exclusive loras stored via Git LFS, and a setup script that installs all dependencies and downloads HuggingFace-hosted models on vast.ai. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
40 lines
1.5 KiB
Python
40 lines
1.5 KiB
Python
import os
|
|
import subprocess
|
|
|
|
|
|
def get_enabled_subdirectories_with_files(base_directory):
|
|
subdirs_with_files = []
|
|
for subdir in os.listdir(base_directory):
|
|
try:
|
|
full_path = os.path.join(base_directory, subdir)
|
|
if os.path.isdir(full_path) and not subdir.endswith(".disabled") and not subdir.startswith('.') and subdir != '__pycache__':
|
|
print(f"## Install dependencies for '{subdir}'")
|
|
requirements_file = os.path.join(full_path, "requirements.txt")
|
|
install_script = os.path.join(full_path, "install.py")
|
|
|
|
if os.path.exists(requirements_file) or os.path.exists(install_script):
|
|
subdirs_with_files.append((full_path, requirements_file, install_script))
|
|
except Exception as e:
|
|
print(f"EXCEPTION During Dependencies INSTALL on '{subdir}':\n{e}")
|
|
|
|
return subdirs_with_files
|
|
|
|
|
|
def install_requirements(requirements_file_path):
|
|
if os.path.exists(requirements_file_path):
|
|
subprocess.run(["pip", "install", "-r", requirements_file_path])
|
|
|
|
|
|
def run_install_script(install_script_path):
|
|
if os.path.exists(install_script_path):
|
|
subprocess.run(["python", install_script_path])
|
|
|
|
|
|
custom_nodes_directory = "custom_nodes"
|
|
subdirs_with_files = get_enabled_subdirectories_with_files(custom_nodes_directory)
|
|
|
|
|
|
for subdir, requirements_file, install_script in subdirs_with_files:
|
|
install_requirements(requirements_file)
|
|
run_install_script(install_script)
|