SquidMesh.Config (squid_mesh v0.1.0-alpha.2)

Copy Markdown View Source

Loads and validates host application configuration for Squid Mesh.

This contract is intentionally small so application teams only configure the runtime boundary once, while workflow authors stay focused on declarative workflow definitions and public API usage.

Summary

Types

execution_option()

@type execution_option() :: {:name, module() | atom()} | {:queue, atom()}

raw_config()

@type raw_config() :: [repo: module(), execution: [execution_option()]]

t()

@type t() :: %SquidMesh.Config{
  execution_name: module() | atom(),
  execution_queue: atom(),
  repo: module()
}

Functions

load(overrides \\ [])

@spec load(keyword()) :: {:ok, t()} | {:error, {:missing_config, [atom()]}}

load!(overrides \\ [])

@spec load!(keyword()) :: t()