- Reorganize configs into environments/, workers/, deprecated/ folders - Reorganize scripts into testing/, deployment/, maintenance/, benchmarks/ folders - Add comprehensive testing guide documentation - Add new Makefile targets: test-full, test-auth, test-status - Update script paths in Makefile to match new organization - Create testing protocol documentation - Add cleanup status checking functionality Testing framework now includes: - Quick authentication tests (make test-auth) - Full test suite runner (make test-full) - Cleanup status monitoring (make test-status) - Comprehensive documentation and troubleshooting guides
79 lines
1.6 KiB
YAML
79 lines
1.6 KiB
YAML
# Worker configuration for Homelab secure environment
|
|
worker_id: "homelab-secure-worker-1"
|
|
|
|
# Redis configuration with connection pooling
|
|
redis:
|
|
url: "redis://redis:6379"
|
|
max_connections: 10
|
|
connection_timeout: "10s"
|
|
read_timeout: "5s"
|
|
write_timeout: "5s"
|
|
|
|
# Local mode disabled for containerized execution
|
|
local_mode: false
|
|
|
|
# Job paths with security considerations
|
|
base_path: "/tmp/fetchml-jobs"
|
|
container_workspace: "/workspace"
|
|
container_results: "/results"
|
|
|
|
# Podman settings with resource limits
|
|
podman_image: "python:3.11-slim"
|
|
podman_cpus: "2"
|
|
podman_memory: "4g"
|
|
podman_network: "ml-job-network"
|
|
podman_timeout: "30m"
|
|
|
|
# Worker configuration with security
|
|
heartbeat_interval: "30s"
|
|
lease_duration: "5m"
|
|
max_concurrent_tasks: 2
|
|
task_timeout: "30m"
|
|
|
|
# Data manager settings
|
|
data_manager:
|
|
enabled: true
|
|
base_path: "/data"
|
|
encryption_enabled: true
|
|
backup_enabled: true
|
|
|
|
# SSH settings with secure configuration
|
|
ssh:
|
|
enabled: true
|
|
host: "localhost"
|
|
port: 2222
|
|
user: "worker"
|
|
password: "HomelabWorker2024!"
|
|
key_path: "/home/worker/.ssh/id_rsa"
|
|
max_retries: 3
|
|
connection_timeout: "30s"
|
|
strict_host_key_checking: false
|
|
|
|
# Logging with rotation and security
|
|
logging:
|
|
level: "info"
|
|
file: "/logs/worker.log"
|
|
max_size: "50MB"
|
|
max_backups: 5
|
|
compress: true
|
|
audit_enabled: true
|
|
|
|
# Metrics and monitoring
|
|
metrics:
|
|
enabled: true
|
|
endpoint: ":9100"
|
|
path: "/metrics"
|
|
|
|
# Security settings
|
|
security:
|
|
enable_job_isolation: true
|
|
sandbox_enabled: true
|
|
resource_monitoring: true
|
|
audit_commands: true
|
|
|
|
# Health check configuration
|
|
health_check:
|
|
enabled: true
|
|
interval: "30s"
|
|
timeout: "10s"
|
|
failure_threshold: 3
|