# Vault Service - Solo Mode Configuration
# Single developer, embedded storage, minimal resources

let vault_schema = import "../schemas/vault-service.ncl" in

{
  vault | vault_schema.VaultServiceConfig = {
    server = {
      host = "127.0.0.1",
      port = 8200,
      workers = 2,
      keep_alive = 75,
      max_connections = 50,
    },

    storage = {
      backend = "filesystem",
      path = "/tmp/provisioning-vault-solo/data",
      encryption_key_path = "/tmp/provisioning-vault-solo/master.key",
    },

    vault = {
      server_url = "http://localhost:8200",
      storage_backend = "filesystem",
      deployment_mode = "Embedded",
      mount_point = "transit",
      key_name = "provisioning-master",
      tls_verify = false,
    },

    ha = {
      enabled = false,
      mode = "raft",
    },

    security = {
      encryption_algorithm = "aes-256-gcm",
      key_rotation_days = 90,
    },

    monitoring = {
      enabled = false,
      metrics_interval = 60,
    },

    logging = {
      level = "info",
      format = "json",
    },
  },
}
