# Shared Configuration (K8s ConfigMap equivalent)
# Common configuration shared across all services

# Global Settings
global:
  environment: production
  cluster_name: motovaultpro-dev
  namespace: motovaultpro
  timezone: UTC

# Common Service Configuration
service_defaults:
  port_naming:
    http: 8080
    https: 8443
    metrics: 9090

  timeouts:
    startup: 30s
    readiness: 5s
    liveness: 10s
    shutdown: 30s

  resource_limits:
    tier_1:  # Critical services
      memory: 2g
      cpu: 2.0
    tier_2:  # Supporting services
      memory: 1g
      cpu: 1.0
    tier_3:  # Infrastructure services
      memory: 512m
      cpu: 0.5

# Network Configuration
networking:
  networks:
    frontend:
      purpose: public-traffic-only
      internal: false
    backend:
      purpose: api-services
      internal: true
    database:
      purpose: app-data-layer
      internal: true
    platform:
      purpose: platform-services
      internal: true

# Security Configuration
security:
  tls:
    min_version: "1.2"
    preferred_version: "1.3"
    cipher_suites:
      - TLS_CHACHA20_POLY1305_SHA256
      - TLS_AES_256_GCM_SHA384
      - TLS_AES_128_GCM_SHA256

  headers:
    hsts_max_age: 31536000
    content_type_options: nosniff
    frame_options: DENY
    xss_protection: "1; mode=block"

# Monitoring & Observability
monitoring:
  prometheus:
    enabled: true
    port: 9090
    path: /metrics
    scrape_interval: 30s

  health_checks:
    interval: 30s
    timeout: 10s
    retries: 3

  logging:
    level: INFO
    format: json
    retention: 30d

# Performance Configuration
performance:
  compression:
    enabled: true
    types:
      - text/html
      - text/css
      - text/javascript
      - application/json
      - application/xml

  caching:
    enabled: true
    max_age: 3600
    static_assets: 86400

# External Services Configuration
external_services:
  auth0:
    base_domain: motovaultpro.us.auth0.com
    api_audience: https://api.motovaultpro.com

  google_maps:
    base_url: https://maps.googleapis.com/maps/api

  vpic:
    base_url: https://vpic.nhtsa.dot.gov/api/vehicles

# Development Configuration
development:
  debug_enabled: false
  hot_reload: false
  ssl_verify: true
  local_overrides: false

# Container Configuration
containers:
  restart_policy: unless-stopped
  log_driver: json-file
  log_options:
    max_size: 10m
    max_file: 3

# Service Discovery Configuration
service_discovery:
  provider: traefik
  auto_discovery: true
  health_check_path: /health
  labels:
    security_tier: production
    monitoring: enabled
    backup: required