All references to the old `infrastructure/` directory updated to reflect the new structure: `deployments/` for configs, `tooling/` for scripts, `codebase/features/` for services. - Fix queue-worker.yaml entrypoints (infrastructure/services/ -> codebase/features/) - Fix .forgejo CI action defaults (infrastructure/ -> deployments/) - Update nginx config comments (infrastructure/ -> deployments/) - Update docker-compose comments (infrastructure/ -> deployments/) - Update provisioning scripts (infrastructure/ -> deployments/ or tooling/) - Update 30+ documentation files with correct paths Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
141 lines
4.7 KiB
YAML
141 lines
4.7 KiB
YAML
# =============================================================================
|
|
# External Application Dependencies
|
|
# =============================================================================
|
|
#
|
|
# Defines how lilith-platform integrates with external applications.
|
|
# These are applications that live in separate repositories but are part of
|
|
# the development environment.
|
|
#
|
|
# Location: ~/Code/@applications/
|
|
#
|
|
# IMPORTANT: Port configurations are owned by the external repos.
|
|
# lilith-platform loads and consumes them via:
|
|
# tooling/scripts/orchestration/external-config-loader.ts
|
|
#
|
|
# Integration Patterns:
|
|
# - docker-compose: Service runs in docker-compose.dev-all.yml
|
|
# - systemd: Service runs as a systemd unit at host level
|
|
# - manual: Service must be started manually
|
|
#
|
|
|
|
applications:
|
|
# ===========================================================================
|
|
# @imajin - AI Image Generation Pipeline
|
|
# ===========================================================================
|
|
# Multi-service image generation system with GPU requirements.
|
|
# Port configuration owned by @imajin repo.
|
|
#
|
|
imajin:
|
|
path: ~/Code/@applications/@imajin
|
|
description: AI-powered image generation pipeline
|
|
integration: manual # Start via ./run dev <service> or ./run prod <service>
|
|
|
|
# Port configuration source (source of truth)
|
|
portsConfig:
|
|
dev: infrastructure/ports.yaml
|
|
prod: infrastructure/ports.production.yaml
|
|
|
|
# Services (ports loaded dynamically from portsConfig)
|
|
services:
|
|
- id: classifier
|
|
description: Cultural request classification
|
|
gpu: false
|
|
|
|
- id: diffusion
|
|
description: SDXL image generation
|
|
gpu: true
|
|
notes: Requires 8GB+ VRAM
|
|
|
|
- id: prompt
|
|
description: LLM prompt generation
|
|
gpu: true
|
|
notes: Can share GPU with diffusion
|
|
|
|
- id: processing
|
|
description: CPU image post-processing (Sharp/NestJS)
|
|
gpu: false
|
|
|
|
- id: aesthetic
|
|
description: Aesthetic quality scoring
|
|
gpu: true
|
|
|
|
- id: semantic
|
|
description: Semantic analysis and tagging
|
|
gpu: true
|
|
|
|
- id: moderator
|
|
description: Content moderation
|
|
gpu: false
|
|
|
|
- id: identity
|
|
description: Face/identity recognition
|
|
gpu: true
|
|
|
|
- id: api
|
|
description: Main orchestrator API
|
|
gpu: false
|
|
|
|
# CLI commands for service management
|
|
commands:
|
|
dev: ./run dev <service> # Start in dev mode with --reload
|
|
prod: ./run prod <service> # Start in prod mode
|
|
list: ./run dev --list # List available services
|
|
|
|
# ===========================================================================
|
|
# @model-boss - GPU/VRAM Coordinator
|
|
# ===========================================================================
|
|
# Coordinates GPU access across multiple ML services.
|
|
# Runs as a systemd service at host level (always on).
|
|
#
|
|
model-boss:
|
|
path: ~/Code/@applications/@model-boss
|
|
description: GPU/VRAM lease coordinator for ML services
|
|
integration: systemd
|
|
serviceName: model-boss.service
|
|
|
|
# Port configuration source (source of truth)
|
|
portsConfig:
|
|
dev: infrastructure/ports.yaml
|
|
prod: infrastructure/ports.production.yaml
|
|
|
|
# Services (ports loaded dynamically from portsConfig)
|
|
services:
|
|
- id: coordinator
|
|
description: GPU lease coordinator
|
|
gpu: false
|
|
|
|
- id: llama-http
|
|
description: LLM inference service
|
|
gpu: true
|
|
|
|
notes: |
|
|
Always-running service that coordinates GPU access.
|
|
Install with: cd ~/Code/@applications/@model-boss && ./install
|
|
Upgrade with: cd ~/Code/@applications/@model-boss && ./upgrade
|
|
Logs: sudo journalctl -u model-boss -f
|
|
|
|
# Files that need to exist in @model-boss repo
|
|
requiredFiles:
|
|
- run # Service runner script
|
|
- infrastructure/ports.yaml # Port configuration
|
|
|
|
# CLI commands for service management
|
|
commands:
|
|
dev: ./run dev <service> # Start in dev mode
|
|
prod: ./run prod <service> # Start in prod mode
|
|
list: ./run dev --list # List available services
|
|
|
|
# =============================================================================
|
|
# Port Convention
|
|
# =============================================================================
|
|
#
|
|
# Both @imajin and @model-boss use the convention:
|
|
# Production Port = Development Port + 10000
|
|
#
|
|
# This allows running dev and prod instances simultaneously on the same host.
|
|
#
|
|
# Example:
|
|
# @imajin diffusion: 8002 (dev), 18002 (prod)
|
|
# @model-boss coordinator: 8210 (dev), 18210 (prod)
|
|
#
|
|
# =============================================================================
|