SvEx. Config. Container
(SvEx v0.4.2)
Container tooling — the container: section. Type-independent: podman and
docker are valid for :otp and :web alike.
compose is ordered, and the order is load-bearing:
[:none, :podman, :docker]. defenum/2 numbers keys by position, so rank is
a comparison rather than a hand-written table.
compose is the canonical name, and canonically a tri-state. The retired
scaffolder skills dispatched on two independent booleans, options.podman
and options.docker, which is why their implication table listed
:docker => podman. Collapsed onto one ordered key there is nothing to
derive — :docker already outranks :podman — and the state those two
booleans admit but no project can be, docker: true, podman: false, becomes
unrepresentable. Those spellings are retired; see the mapping table in
SvEx.Config.
Summary
Functions
Raises compose to at least floor, leaving a higher setting alone.
Builds this section, and any nested block, from input.
Types
@type t() :: %SvEx.Config.Container{ compose: atom(), local_ci: boolean(), prod_image: boolean(), sidecars: SvEx.Config.Container.Sidecars.t() }
Functions
Raises compose to at least floor, leaving a higher setting alone.
Rank comes from defenum position, so :docker survives a :podman floor.
Builds this section, and any nested block, from input.