Mailglass.Installer.Apply (Mailglass v1.0.0)

Copy Markdown View Source

Applies installer operations with deterministic ordering and outcome labels.

Summary

Functions

Runs the installer plan and classifies each operation as :create | :update | :unchanged | :conflict.

Types

result_map()

@type result_map() :: %{
  operations: [Mailglass.Installer.Operation.t()],
  counts: %{
    create: non_neg_integer(),
    update: non_neg_integer(),
    unchanged: non_neg_integer(),
    conflict: non_neg_integer()
  },
  manifest_path: String.t(),
  dry_run?: boolean()
}

Functions

run(plan, opts)

@spec run(
  [Mailglass.Installer.Operation.t()],
  keyword()
) :: {:ok, result_map()} | {:error, term()}

Runs the installer plan and classifies each operation as :create | :update | :unchanged | :conflict.