refactor: reorganize directory structure and remove hardcoded paths

Move comfyui and vllm out of models/ directory to top level for better
organization. Replace all hardcoded /workspace paths with relative paths
to make the configuration portable across different environments.

Changes:
- Move models/comfyui/ → comfyui/
- Move models/vllm/ → vllm/
- Remove models/ directory (empty)
- Update arty.yml: replace /workspace with environment variables
- Update supervisord.conf: use relative paths from /workspace/ai
- Update all script references to use new paths
- Maintain TQDM_DISABLE=1 to fix BrokenPipeError

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-22 20:49:27 +01:00
parent 9058b1f9dd
commit 897dcb175a
31 changed files with 124 additions and 124 deletions

210
arty.yml
View File

@@ -8,63 +8,63 @@ license: "MIT"
references:
# ComfyUI base installation
- url: https://github.com/comfyanonymous/ComfyUI.git
into: /workspace/ComfyUI
into: $COMFYUI_ROOT
description: "ComfyUI - Node-based interface for image/video/audio generation"
# ComfyUI Essential Custom Nodes
- url: https://github.com/ltdrdata/ComfyUI-Manager.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-Manager
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-Manager
description: "ComfyUI Manager - Install/manage custom nodes and models"
essential: true
- url: https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-VideoHelperSuite
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-VideoHelperSuite
description: "Video operations and processing"
essential: true
- url: https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-AnimateDiff-Evolved
description: "AnimateDiff for video generation"
essential: true
- url: https://github.com/cubiq/ComfyUI_IPAdapter_plus.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI_IPAdapter_plus
into: $COMFYUI_ROOT/custom_nodes/ComfyUI_IPAdapter_plus
description: "IP-Adapter for style transfer"
essential: true
- url: https://github.com/ltdrdata/ComfyUI-Impact-Pack.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-Impact-Pack
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-Impact-Pack
description: "Auto face enhancement and detailer"
essential: true
# ComfyUI Optional Custom Nodes
- url: https://github.com/kijai/ComfyUI-CogVideoXWrapper.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-CogVideoXWrapper
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-CogVideoXWrapper
description: "CogVideoX integration for text-to-video"
essential: false
- url: https://github.com/ltdrdata/ComfyUI-Inspire-Pack.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-Inspire-Pack
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-Inspire-Pack
description: "Additional inspiration tools"
essential: false
- url: https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-Advanced-ControlNet
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-Advanced-ControlNet
description: "Advanced ControlNet features"
essential: false
- url: https://github.com/MrForExample/ComfyUI-3D-Pack.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI-3D-Pack
into: $COMFYUI_ROOT/custom_nodes/ComfyUI-3D-Pack
description: "3D asset generation"
essential: false
- url: https://github.com/MixLabPro/comfyui-sound-lab.git
into: /workspace/ComfyUI/custom_nodes/comfyui-sound-lab
into: $COMFYUI_ROOT/custom_nodes/comfyui-sound-lab
description: "MusicGen and Stable Audio integration"
essential: false
- url: https://github.com/ssitu/ComfyUI_UltimateSDUpscale.git
into: /workspace/ComfyUI/custom_nodes/ComfyUI_UltimateSDUpscale
into: $COMFYUI_ROOT/custom_nodes/ComfyUI_UltimateSDUpscale
description: "Ultimate SD Upscale for high-quality image upscaling"
essential: false
@@ -72,34 +72,34 @@ references:
envs:
# Production: Only essential components
prod:
- /workspace/ai
- /workspace/ComfyUI
- /workspace/ComfyUI/custom_nodes/ComfyUI-Manager
- /workspace/ComfyUI/custom_nodes/ComfyUI-VideoHelperSuite
- /workspace/ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved
- /workspace/ComfyUI/custom_nodes/ComfyUI_IPAdapter_plus
- /workspace/ComfyUI/custom_nodes/ComfyUI-Impact-Pack
- $AI_ROOT
- $COMFYUI_ROOT
- $COMFYUI_ROOT/custom_nodes/ComfyUI-Manager
- $COMFYUI_ROOT/custom_nodes/ComfyUI-VideoHelperSuite
- $COMFYUI_ROOT/custom_nodes/ComfyUI-AnimateDiff-Evolved
- $COMFYUI_ROOT/custom_nodes/ComfyUI_IPAdapter_plus
- $COMFYUI_ROOT/custom_nodes/ComfyUI-Impact-Pack
# Development: All repositories including optional nodes
dev:
- /workspace/ai
- /workspace/ComfyUI
- /workspace/ComfyUI/custom_nodes/ComfyUI-Manager
- /workspace/ComfyUI/custom_nodes/ComfyUI-VideoHelperSuite
- /workspace/ComfyUI/custom_nodes/ComfyUI-AnimateDiff-Evolved
- /workspace/ComfyUI/custom_nodes/ComfyUI_IPAdapter_plus
- /workspace/ComfyUI/custom_nodes/ComfyUI-Impact-Pack
- /workspace/ComfyUI/custom_nodes/ComfyUI-CogVideoXWrapper
- /workspace/ComfyUI/custom_nodes/ComfyUI-Inspire-Pack
- /workspace/ComfyUI/custom_nodes/ComfyUI-Advanced-ControlNet
- /workspace/ComfyUI/custom_nodes/ComfyUI-3D-Pack
- /workspace/ComfyUI/custom_nodes/comfyui-sound-lab
- $AI_ROOT
- $COMFYUI_ROOT
- $COMFYUI_ROOT/custom_nodes/ComfyUI-Manager
- $COMFYUI_ROOT/custom_nodes/ComfyUI-VideoHelperSuite
- $COMFYUI_ROOT/custom_nodes/ComfyUI-AnimateDiff-Evolved
- $COMFYUI_ROOT/custom_nodes/ComfyUI_IPAdapter_plus
- $COMFYUI_ROOT/custom_nodes/ComfyUI-Impact-Pack
- $COMFYUI_ROOT/custom_nodes/ComfyUI-CogVideoXWrapper
- $COMFYUI_ROOT/custom_nodes/ComfyUI-Inspire-Pack
- $COMFYUI_ROOT/custom_nodes/ComfyUI-Advanced-ControlNet
- $COMFYUI_ROOT/custom_nodes/ComfyUI-3D-Pack
- $COMFYUI_ROOT/custom_nodes/comfyui-sound-lab
# Minimal: Only orchestrator and ComfyUI base
minimal:
- /workspace/ai
- /workspace/ComfyUI
- /workspace/ComfyUI/custom_nodes/ComfyUI-Manager
- $AI_ROOT
- $COMFYUI_ROOT
- $COMFYUI_ROOT/custom_nodes/ComfyUI-Manager
# Deployment scripts for RunPod instances
scripts:
@@ -156,18 +156,18 @@ scripts:
# Install core Python packages
echo "Installing core Python packages..."
if [ -f "/workspace/ai/core/requirements.txt" ]; then
sudo pip3 install -r /workspace/ai/core/requirements.txt
if [ -f "$AI_ROOT/core/requirements.txt" ]; then
sudo pip3 install -r $AI_ROOT/core/requirements.txt
else
echo "⚠ Warning: /workspace/ai/core/requirements.txt not found"
echo "⚠ Warning: $AI_ROOT/core/requirements.txt not found"
fi
# Install vLLM dependencies
echo "Installing vLLM dependencies..."
if [ -f "/workspace/ai/models/vllm/requirements.txt" ]; then
sudo pip3 install -r /workspace/ai/models/vllm/requirements.txt
if [ -f "vllm/requirements.txt" ]; then
sudo pip3 install -r vllm/requirements.txt
else
echo "⚠ Warning: /workspace/ai/models/vllm/requirements.txt not found"
echo "⚠ Warning: vllm/requirements.txt not found"
fi
echo ""
@@ -180,42 +180,42 @@ scripts:
echo ""
# Clone ComfyUI if not exists
if [ ! -d "/workspace/ComfyUI" ]; then
if [ ! -d "$COMFYUI_ROOT" ]; then
echo "Cloning ComfyUI repository..."
git clone https://github.com/comfyanonymous/ComfyUI.git /workspace/ComfyUI
git clone https://github.com/comfyanonymous/ComfyUI.git $COMFYUI_ROOT
else
echo "ComfyUI already exists, pulling latest changes..."
cd /workspace/ComfyUI && git pull
cd $COMFYUI_ROOT && git pull
fi
# Install ComfyUI dependencies
echo "Installing ComfyUI dependencies..."
sudo pip3 install -r /workspace/ComfyUI/requirements.txt
sudo pip3 install -r $COMFYUI_ROOT/requirements.txt
# Install additional ComfyUI dependencies
if [ -f "/workspace/ai/models/comfyui/requirements.txt" ]; then
if [ -f "comfyui/requirements.txt" ]; then
echo "Installing additional ComfyUI dependencies..."
sudo pip3 install -r /workspace/ai/models/comfyui/requirements.txt
sudo pip3 install -r comfyui/requirements.txt
fi
# Create model directory structure
echo "Creating ComfyUI model directories..."
mkdir -p /workspace/ComfyUI/models/{checkpoints,unet,vae,loras,clip,clip_vision,controlnet,ipadapter,embeddings,upscale_models,video_models,animatediff_models,animatediff_motion_lora,audio_models,configs,diffusers,diffusion_models}
mkdir -p $COMFYUI_ROOT/models/{checkpoints,unet,vae,loras,clip,clip_vision,controlnet,ipadapter,embeddings,upscale_models,video_models,animatediff_models,animatediff_motion_lora,audio_models,configs,diffusers,diffusion_models}
# Create symlink to huggingface cache
echo "Creating symlink to HuggingFace cache..."
ln -sf /workspace/huggingface_cache /workspace/ComfyUI/models/huggingface_cache
ln -sf $HF_CACHE $COMFYUI_ROOT/models/huggingface_cache
# Make start script executable
if [ -f "/workspace/ai/models/comfyui/start.sh" ]; then
chmod +x /workspace/ai/models/comfyui/start.sh
if [ -f "comfyui/start.sh" ]; then
chmod +x comfyui/start.sh
fi
echo ""
echo "✓ ComfyUI base installed successfully"
echo " Directory: /workspace/ComfyUI"
echo " Directory: $COMFYUI_ROOT"
echo " Port: 8188"
echo " Start: bash /workspace/ai/models/comfyui/start.sh"
echo " Start: bash comfyui/start.sh"
setup/comfyui-nodes: |
echo "========================================="
@@ -223,7 +223,7 @@ scripts:
echo "========================================="
echo ""
cd /workspace/ComfyUI/custom_nodes
cd $COMFYUI_ROOT/custom_nodes
# ComfyUI Manager
echo "[1/5] Installing ComfyUI-Manager..."
@@ -307,22 +307,22 @@ scripts:
sudo pip3 install supervisor
# Create logs directory
mkdir -p /workspace/logs
mkdir -p $LOGS_DIR
# Copy supervisor configuration
if [ -f "/workspace/ai/supervisord.conf" ]; then
if [ -f "$AI_ROOT/supervisord.conf" ]; then
echo "Deploying supervisord configuration..."
cp /workspace/ai/supervisord.conf /workspace/supervisord.conf
cp $AI_ROOT/supervisord.conf /workspace/supervisord.conf
chmod 644 /workspace/supervisord.conf
else
echo "⚠ Warning: supervisord.conf not found at /workspace/ai/supervisord.conf"
echo "⚠ Warning: supervisord.conf not found at $AI_ROOT/supervisord.conf"
fi
echo ""
echo "✓ Supervisor installed successfully"
echo ""
echo "Configuration: /workspace/supervisord.conf"
echo "Logs: /workspace/logs/"
echo "Logs: $LOGS_DIR/"
echo ""
echo "Services configured:"
echo " - comfyui: ComfyUI server (port 8188) - autostart enabled"
@@ -373,14 +373,14 @@ scripts:
# Create symlink in ComfyUI
echo "Creating symlink in ComfyUI..."
ln -sf /mnt/hidrive/users/valknar/Pictures/AI/ComfyUI /workspace/ComfyUI/output_hidrive
ln -sf /mnt/hidrive/users/valknar/Pictures/AI/ComfyUI $COMFYUI_ROOT/output_hidrive
echo ""
echo "✓ WebDAV setup complete"
echo ""
echo "Mount point: /mnt/hidrive"
echo "ComfyUI output: /mnt/hidrive/users/valknar/Pictures/AI/ComfyUI"
echo "ComfyUI symlink: /workspace/ComfyUI/output_hidrive"
echo "ComfyUI symlink: $COMFYUI_ROOT/output_hidrive"
echo ""
echo "To unmount: umount /mnt/hidrive"
echo "To remount: mount -t davfs https://webdav.hidrive.ionos.com/ /mnt/hidrive"
@@ -405,17 +405,17 @@ scripts:
echo ""
# Check cache size
if [ -d "/workspace/huggingface_cache" ]; then
if [ -d "$HF_CACHE" ]; then
echo "Model cache size:"
du -sh /workspace/huggingface_cache
du -sh $HF_CACHE
else
echo "⚠ Warning: /workspace/huggingface_cache not found"
echo "⚠ Warning: $HF_CACHE not found"
fi
echo ""
# Verify service scripts
echo "Service scripts:"
for script in /workspace/ai/scripts/*.sh; do
for script in $AI_ROOT/scripts/*.sh; do
if [ -f "$script" ]; then
echo " ✓ $(basename $script)"
chmod +x "$script"
@@ -433,7 +433,7 @@ scripts:
# Remove sensitive files
echo "Removing sensitive files..."
rm -f /workspace/ai/.env
rm -f $AI_ROOT/.env
rm -f /root/.ssh/known_hosts
rm -f /root/.bash_history
rm -f /root/.python_history
@@ -548,48 +548,48 @@ scripts:
# Legacy Setup (deprecated - use install/* instead)
#
setup/full-legacy: |
cd /workspace/ai
cd $AI_ROOT
cp .env.example .env
echo "⚠ DEPRECATED: Use 'arty run install/full' instead"
echo "Edit .env and set HF_TOKEN, then run: ansible-playbook playbook.yml"
setup/essential-legacy: |
cd /workspace/ai
cd $AI_ROOT
cp .env.example .env
echo "⚠ DEPRECATED: Use 'arty run install/essential' instead"
echo "Edit .env and set HF_TOKEN, then run: ansible-playbook playbook.yml --tags comfyui-essential"
# Model linking (run after models are downloaded)
models/link-comfyui: |
cd /workspace/ComfyUI/models/diffusers
ln -sf /workspace/huggingface_cache/models--black-forest-labs--FLUX.1-schnell FLUX.1-schnell
ln -sf /workspace/huggingface_cache/models--black-forest-labs--FLUX.1-dev FLUX.1-dev
ln -sf /workspace/huggingface_cache/models--stabilityai--stable-diffusion-xl-base-1.0 stable-diffusion-xl-base-1.0
ln -sf /workspace/huggingface_cache/models--stabilityai--stable-diffusion-xl-refiner-1.0 stable-diffusion-xl-refiner-1.0
ln -sf /workspace/huggingface_cache/models--stabilityai--stable-diffusion-3.5-large stable-diffusion-3.5-large
cd /workspace/ComfyUI/models/clip_vision
ln -sf /workspace/huggingface_cache/models--openai--clip-vit-large-patch14 clip-vit-large-patch14
ln -sf /workspace/huggingface_cache/models--laion--CLIP-ViT-bigG-14-laion2B-39B-b160k CLIP-ViT-bigG-14
ln -sf /workspace/huggingface_cache/models--google--siglip-so400m-patch14-384 siglip-so400m-patch14-384
cd /workspace/ComfyUI/models/diffusion_models
ln -sf /workspace/huggingface_cache/models--THUDM--CogVideoX-5b CogVideoX-5b
ln -sf /workspace/huggingface_cache/models--stabilityai--stable-video-diffusion-img2vid stable-video-diffusion-img2vid
ln -sf /workspace/huggingface_cache/models--stabilityai--stable-video-diffusion-img2vid-xt stable-video-diffusion-img2vid-xt
cd $COMFYUI_ROOT/models/diffusers
ln -sf $HF_CACHE/models--black-forest-labs--FLUX.1-schnell FLUX.1-schnell
ln -sf $HF_CACHE/models--black-forest-labs--FLUX.1-dev FLUX.1-dev
ln -sf $HF_CACHE/models--stabilityai--stable-diffusion-xl-base-1.0 stable-diffusion-xl-base-1.0
ln -sf $HF_CACHE/models--stabilityai--stable-diffusion-xl-refiner-1.0 stable-diffusion-xl-refiner-1.0
ln -sf $HF_CACHE/models--stabilityai--stable-diffusion-3.5-large stable-diffusion-3.5-large
cd $COMFYUI_ROOT/models/clip_vision
ln -sf $HF_CACHE/models--openai--clip-vit-large-patch14 clip-vit-large-patch14
ln -sf $HF_CACHE/models--laion--CLIP-ViT-bigG-14-laion2B-39B-b160k CLIP-ViT-bigG-14
ln -sf $HF_CACHE/models--google--siglip-so400m-patch14-384 siglip-so400m-patch14-384
cd $COMFYUI_ROOT/models/diffusion_models
ln -sf $HF_CACHE/models--THUDM--CogVideoX-5b CogVideoX-5b
ln -sf $HF_CACHE/models--stabilityai--stable-video-diffusion-img2vid stable-video-diffusion-img2vid
ln -sf $HF_CACHE/models--stabilityai--stable-video-diffusion-img2vid-xt stable-video-diffusion-img2vid-xt
echo "Models linked to ComfyUI"
# Workflow linking (link production workflows with category prefixes)
workflows/link-comfyui: |
# Create ComfyUI user workflows directory
mkdir -p /workspace/ComfyUI/user/default/workflows
cd /workspace/ComfyUI/user/default/workflows
mkdir -p $COMFYUI_ROOT/user/default/workflows
cd $COMFYUI_ROOT/user/default/workflows
# Remove old symlinks from previous location
rm -f /workspace/ComfyUI/workflows/*.json 2>/dev/null || true
rm -f $COMFYUI_ROOT/workflows/*.json 2>/dev/null || true
# Clear existing workflow symlinks to avoid conflicts
find . -type l -name "*.json" -delete
SOURCE_DIR="/workspace/ai/models/comfyui/workflows"
SOURCE_DIR="comfyui/workflows"
# Text-to-Image workflows (prefix: t2i_)
for file in "$SOURCE_DIR/text-to-image"/*.json; do
@@ -644,7 +644,7 @@ scripts:
echo "Production workflows linked to ComfyUI user directory"
echo " Total workflows: $WORKFLOW_COUNT"
echo " Location: /workspace/ComfyUI/user/default/workflows/"
echo " Location: $COMFYUI_ROOT/user/default/workflows/"
echo ""
echo "Categories (by prefix):"
echo " - t2i_ : 4 text-to-image workflows (FLUX, SDXL, SD3.5)"
@@ -698,8 +698,8 @@ scripts:
#
check/gpu: nvidia-smi
check/disk: df -h /workspace
check/models: du -sh /workspace/huggingface_cache
check/cache: find /workspace/huggingface_cache -type d -name 'models--*' -maxdepth 1
check/models: du -sh $HF_CACHE
check/cache: find $HF_CACHE -type d -name 'models--*' -maxdepth 1
# Deployment notes
notes: |
@@ -723,7 +723,7 @@ notes: |
arty run install/full
3. Configure Environment:
cd /workspace/ai
cd $AI_ROOT
cp .env.example .env
# Edit .env and set HF_TOKEN
@@ -805,7 +805,7 @@ notes: |
COMFYUI WORKFLOWS
========================================
Location: /workspace/ComfyUI/workflows/
Location: $COMFYUI_ROOT/workflows/
Link workflows: arty run workflows/link-comfyui
@@ -832,25 +832,25 @@ notes: |
========================================
Configuration:
- /workspace/ai/arty.yml # This file
- /workspace/ai/.env # Environment variables
- $AI_ROOT/arty.yml # This file
- $AI_ROOT/.env # Environment variables
- /workspace/supervisord.conf # Supervisor config
Code:
- /workspace/ai/ # Project directory
- /workspace/ComfyUI/ # ComfyUI installation
- /workspace/ai/scripts/*.sh # Service scripts
- $AI_ROOT/ # Project directory
- $COMFYUI_ROOT/ # ComfyUI installation
- $AI_ROOT/scripts/*.sh # Service scripts
Models:
- /workspace/huggingface_cache/ # Model cache (~401GB)
- /workspace/ComfyUI/models/ # Symlinks to cache
- $HF_CACHE/ # Model cache (~401GB)
- $COMFYUI_ROOT/models/ # Symlinks to cache
Workflows:
- /workspace/ai/models/comfyui/workflows/ # Source (git)
- /workspace/ComfyUI/workflows/ # Linked workflows
- $AI_ROOT/comfyui/workflows/ # Source (git)
- $COMFYUI_ROOT/workflows/ # Linked workflows
Logs:
- /workspace/logs/ # Supervisor logs
- $LOGS_DIR/ # Supervisor logs
========================================
PORTS
@@ -865,8 +865,8 @@ notes: |
DOCUMENTATION
========================================
- /workspace/ai/README.md
- /workspace/ai/CLAUDE.md
- /workspace/ai/COMFYUI_MODELS.md
- /workspace/ai/MODELS_LINKED.md
- /workspace/ai/models/comfyui/workflows/README.md
- $AI_ROOT/README.md
- $AI_ROOT/CLAUDE.md
- $AI_ROOT/COMFYUI_MODELS.md
- $AI_ROOT/MODELS_LINKED.md
- $AI_ROOT/comfyui/workflows/README.md

View File

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -1,16 +1,16 @@
[supervisord]
logfile=/workspace/logs/supervisord.log
pidfile=/workspace/supervisord.pid
childlogdir=/workspace/logs
logfile=../logs/supervisord.log
pidfile=../supervisord.pid
childlogdir=../logs
nodaemon=false
loglevel=info
[unix_http_server]
file=/workspace/supervisor.sock
file=../supervisor.sock
chmod=0700
[supervisorctl]
serverurl=unix:///workspace/supervisor.sock
serverurl=unix://../supervisor.sock
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
@@ -24,52 +24,52 @@ port=0.0.0.0:9001
# ComfyUI Server
[program:comfyui]
command=bash /workspace/ai/models/comfyui/start.sh
directory=/workspace/ComfyUI
command=bash comfyui/start.sh
directory=../ComfyUI
autostart=true
autorestart=true
startretries=3
stderr_logfile=/workspace/logs/comfyui.err.log
stdout_logfile=/workspace/logs/comfyui.out.log
stderr_logfile=../logs/comfyui.err.log
stdout_logfile=../logs/comfyui.out.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10
stderr_logfile_maxbytes=50MB
stderr_logfile_backups=10
environment=HF_HOME="/workspace/huggingface_cache",PYTORCH_CUDA_ALLOC_CONF="expandable_segments:True",TQDM_DISABLE="1"
environment=HF_HOME="../huggingface_cache",PYTORCH_CUDA_ALLOC_CONF="expandable_segments:True",TQDM_DISABLE="1"
priority=100
stopwaitsecs=30
# AI Model Orchestrator
[program:orchestrator]
command=python3 model-orchestrator/orchestrator_subprocess.py
directory=/workspace/ai
directory=../ai
autostart=false
autorestart=true
startretries=3
stderr_logfile=/workspace/logs/orchestrator.err.log
stdout_logfile=/workspace/logs/orchestrator.out.log
stderr_logfile=../logs/orchestrator.err.log
stdout_logfile=../logs/orchestrator.out.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10
stderr_logfile_maxbytes=50MB
stderr_logfile_backups=10
environment=HF_HOME="/workspace/huggingface_cache",HF_TOKEN="%(ENV_HF_TOKEN)s"
environment=HF_HOME="../huggingface_cache",HF_TOKEN="%(ENV_HF_TOKEN)s"
priority=200
stopwaitsecs=30
# ComfyUI WebDAV Sync Service
[program:webdav-sync]
command=python3 /workspace/ai/webdav-sync/webdav_sync.py
directory=/workspace/ai/webdav-sync
command=python3 ../ai/webdav-sync/webdav_sync.py
directory=../ai/webdav-sync
autostart=true
autorestart=true
startretries=3
stderr_logfile=/workspace/logs/webdav-sync.err.log
stdout_logfile=/workspace/logs/webdav-sync.out.log
stderr_logfile=../logs/webdav-sync.err.log
stdout_logfile=../logs/webdav-sync.out.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10
stderr_logfile_maxbytes=50MB
stderr_logfile_backups=10
environment=WEBDAV_URL="%(ENV_WEBDAV_URL)s",WEBDAV_USERNAME="%(ENV_WEBDAV_USERNAME)s",WEBDAV_PASSWORD="%(ENV_WEBDAV_PASSWORD)s",WEBDAV_REMOTE_PATH="%(ENV_WEBDAV_REMOTE_PATH)s",COMFYUI_OUTPUT_DIR="/workspace/ComfyUI/output"
environment=WEBDAV_URL="%(ENV_WEBDAV_URL)s",WEBDAV_USERNAME="%(ENV_WEBDAV_USERNAME)s",WEBDAV_PASSWORD="%(ENV_WEBDAV_PASSWORD)s",WEBDAV_REMOTE_PATH="%(ENV_WEBDAV_REMOTE_PATH)s",COMFYUI_OUTPUT_DIR="../ComfyUI/output"
priority=150
stopwaitsecs=10