Module: Etcher
- Defined in:
- lib/etcher.rb,
lib/etcher/types.rb,
lib/etcher/builder.rb,
lib/etcher/contract.rb,
lib/etcher/registry.rb,
lib/etcher/resolver.rb,
lib/etcher/loaders/json.rb,
lib/etcher/loaders/yaml.rb,
lib/etcher/loaders/environment.rb
Overview
Main namespace.
Defined Under Namespace
Modules: Loaders, Types Classes: Builder, Resolver
Constant Summary collapse
- LOGGER =
Cogger.new id: :etcher, formatter: :emoji
- Contract =
A simple passthrough contract.
lambda do |content| def content.to_monad = Dry::Monads::Success self unless content.respond_to? :to_monad content end
- Registry =
Provides a registry of customization for loading and resolving a configuration.
Data.define :contract, :model, :loaders, :transformers do def initialize contract: Contract, model: Hash, loaders: [], transformers: [] super end def add_loader loader loaders.append loader self end def add_transformer transformer transformers.append transformer self end end