# | Dependency management default values
# | Migrated from: provisioning/kcl/dependencies.k
# | Pattern: Pure defaults (no schema, no contracts)

{
  resource_requirement = {
    cpu = "100m",
    memory = "128Mi",
    disk = "1Gi",
    network = true,
    privileged = false,
  },

  health_check = {
    command = "",
    interval = 30,
    timeout = 10,
    retries = 3,
    success_threshold = 1,
    failure_threshold = 3,
  },

  installation_phase = {
    name = "",
    order = 0,
    parallel = false,
    required = true,
  },

  taskserv_dependencies = {
    name = "",
    timeout = 600,
    retry_count = 3,
    os_support = ["linux"],
    arch_support = ["amd64"],
  },

  taskserv_dependency = {
    name = "",
    timeout = 600,
    retry_count = 3,
    os_support = ["linux"],
    arch_support = ["amd64"],
  },

  oci_source = {
    registry = "",
    namespace = "",
    tls_enabled = false,
    insecure_skip_verify = false,
    platform = "linux/amd64",
    media_type = "application/vnd.kcl.package.v1+tar",
  },

  gitea_source = {
    url = "",
    organization = "",
    use_ssh = false,
    branch = "main",
  },

  local_source = {
    path = "",
    watch = false,
  },

  http_source = {
    url = "",
    basic_auth = false,
  },

  extension_source = {
    type = "oci",
  },

  extension_manifest = {
    name = "",
    type = "provider",
    version = "",
    license = "MIT",
    platforms = ["linux/amd64"],
  },

  repository_config = {
    name = "",
    type = "core",
    enabled = true,
    priority = 100,
    cache_ttl = 3600,
  },

  dependency_resolution = {
    strategy = "strict",
    allow_prerelease = false,
    pin_versions = true,
    max_depth = 10,
    conflict_strategy = "error",
  },
}
