veza/dev-environment/config/development.yaml

276 lines
4.9 KiB
YAML
Raw Normal View History

# 🚀 CONFIGURATION DÉVELOPPEMENT - VEZA PLATFORM
# Configuration générale
project:
name: "Veza Platform"
version: "1.0.0"
description: "Plateforme musicale collaborative complète"
environment: "development"
# Configuration des services
services:
backend-api:
name: "Backend API"
port: 8080
language: "go"
version: "1.23"
health_endpoint: "/health"
start_command: "go run cmd/api/main.go"
working_directory: "veza-backend-api"
dependencies:
- "postgresql"
- "redis"
chat-server:
name: "Chat Server"
port: 3001
language: "rust"
version: "1.70"
health_endpoint: "/health"
start_command: "cargo run"
working_directory: "veza-chat-server"
dependencies:
- "postgresql"
- "redis"
stream-server:
name: "Stream Server"
port: 8000
language: "rust"
version: "1.70"
health_endpoint: "/health"
start_command: "cargo run"
working_directory: "veza-stream-server"
dependencies:
- "redis"
frontend:
name: "Frontend"
port: 3000
language: "typescript"
version: "20"
health_endpoint: "/"
start_command: "npm run dev"
working_directory: "veza-frontend"
dependencies: []
mobile:
name: "Mobile App"
port: 19006
language: "typescript"
version: "20"
health_endpoint: "/"
start_command: "npm start"
working_directory: "veza-mobile"
dependencies: []
# Configuration de la base de données
database:
postgresql:
host: "localhost"
port: 5432
name: "veza_dev"
user: "veza_user"
password: "veza_password"
ssl_mode: "disable"
redis:
host: "localhost"
port: 6379
password: ""
db: 0
# Configuration des tests
testing:
coverage_threshold: 90
timeout: 300
parallel: true
types:
- "unit"
- "integration"
- "performance"
- "security"
tools:
go:
- "go test"
- "gosec"
- "golangci-lint"
rust:
- "cargo test"
- "cargo clippy"
- "cargo audit"
javascript:
- "jest"
- "eslint"
- "npm audit"
# Configuration du monitoring
monitoring:
prometheus:
port: 9090
enabled: true
grafana:
port: 3001
enabled: true
jaeger:
port: 16686
enabled: true
health_checks:
interval: 30
timeout: 10
retries: 3
# Configuration CI/CD
ci_cd:
github_actions: true
docker_registry: "ghcr.io"
image_name: "veza-platform"
environments:
development:
auto_deploy: true
tests_required: true
staging:
auto_deploy: false
tests_required: true
approval_required: true
production:
auto_deploy: false
tests_required: true
approval_required: true
security_scan_required: true
# Configuration des outils de développement
tools:
generators:
enabled: true
templates_path: "dev-environment/templates"
validators:
enabled: true
pre_commit: true
formatters:
enabled: true
auto_format: true
linters:
enabled: true
strict_mode: true
# Configuration de la documentation
documentation:
auto_generate: true
formats:
- "markdown"
- "html"
- "pdf"
sections:
- "api"
- "architecture"
- "deployment"
- "monitoring"
- "development"
# Configuration de la sécurité
security:
secret_management: true
encryption_at_rest: true
encryption_in_transit: true
scans:
dependency_check: true
vulnerability_scan: true
security_audit: true
policies:
password_policy: "strong"
session_timeout: 3600
mfa_required: false
# Configuration des performances
performance:
load_testing: true
stress_testing: true
memory_profiling: true
thresholds:
response_time: 200
throughput: 1000
error_rate: 0.1
cpu_usage: 80
memory_usage: 80
# Configuration des logs
logging:
level: "info"
format: "json"
rotation: true
retention_days: 30
destinations:
- "file"
- "stdout"
- "elasticsearch"
services:
backend-api: "debug"
chat-server: "info"
stream-server: "info"
frontend: "warn"
# Configuration des notifications
notifications:
slack:
enabled: true
webhook_url: "${SLACK_WEBHOOK_URL}"
email:
enabled: true
smtp_host: "${SMTP_HOST}"
smtp_port: 587
webhook:
enabled: true
url: "${WEBHOOK_URL}"
# Configuration des métriques
metrics:
collection_interval: 30
retention_days: 90
custom_metrics:
- "user_registrations"
- "track_uploads"
- "chat_messages"
- "stream_views"
- "api_requests"
- "error_rate"
- "response_time"
# Configuration des environnements
environments:
development:
debug: true
hot_reload: true
mock_services: true
staging:
debug: false
hot_reload: false
mock_services: false
production:
debug: false
hot_reload: false
mock_services: false
monitoring: true
alerting: true