Sha256: 8d434ef18b776e8e5549461c291937141aa36c6066604875aa8a9f7c1f9dd290
Contents?: true
Size: 1002 Bytes
Versions: 30
Compression:
Stored size: 1002 Bytes
Contents
class KuberKit::EnvFileReader::Reader ReaderNotFoundError = Class.new(KuberKit::NotFoundError) include KuberKit::Import[ "env_file_reader.strategies.artifact_file", ] def initialize(**injected_deps) super(injected_deps) add_default_strategies end def use_reader(env_file_reader, env_file_class:) @@readers ||= {} if !env_file_reader.is_a?(KuberKit::EnvFileReader::Strategies::Abstract) raise ArgumentError.new("should be an instance of KuberKit::EnvFileReader::Strategies::Abstract, got: #{env_file_reader.inspect}") end @@readers[env_file_class] = env_file_reader end def read(shell, env_file) reader = @@readers[env_file.class] raise ReaderNotFoundError, "Can't find reader for env file #{env_file}" if reader.nil? reader.read(shell, env_file) end def reset! @@readers = {} end private def add_default_strategies use_reader(artifact_file, env_file_class: KuberKit::Core::EnvFiles::ArtifactFile) end end
Version data entries
30 entries across 30 versions & 1 rubygems