Definitively.Domain.GitAction (definitively v0.3.1)

Copy Markdown

Pure git argv builders and result parsers for git nodes.

Summary

Functions

Builds argv list(s) for a git node.

Builds git argv for the given action and options.

Parses stdout into signals and structured data for a git action.

Types

argv()

@type argv() :: [String.t()]

Functions

argv_for(node_definition)

@spec argv_for(Definitively.Domain.NodeDefinition.t()) ::
  {:ok, argv() | {:multi, [argv()]}} | {:error, term()}

Builds argv list(s) for a git node.

build_argv(action, opts)

@spec build_argv(atom(), map() | nil) ::
  {:ok, argv() | {:multi, [argv()]}} | {:error, term()}

Builds git argv for the given action and options.

parse_result(arg1, arg2, stdout)

@spec parse_result(atom(), non_neg_integer(), String.t()) :: {map(), map()}

Parses stdout into signals and structured data for a git action.