class DockerComposeYamlLoader::Environments
Usage:
DockerComposeYamlLoader::Environments.setup('./path/to/docker-compose.yml', key: 'webapp')
Public Class Methods
new(file_path, key)
click to toggle source
# File lib/docker_compose_yaml_loader/environments.rb, line 13 def initialize(file_path, key) @file_path = file_path @key = key @environments = {} end
setup(file_path, key:, &block)
click to toggle source
# File lib/docker_compose_yaml_loader/environments.rb, line 9 def self.setup(file_path, key:, &block) new(file_path, key).setup(&block) end
Public Instance Methods
fetch()
click to toggle source
# File lib/docker_compose_yaml_loader/environments.rb, line 34 def fetch @environments.each do |key, value| ENV[key] = value.to_s unless ENV.key?(key) end end
set(key, value)
click to toggle source
# File lib/docker_compose_yaml_loader/environments.rb, line 30 def set(key, value) @environments[key.to_s] = value end
setup() { |self| ... }
click to toggle source
# File lib/docker_compose_yaml_loader/environments.rb, line 19 def setup return unless File.exist?(@file_path) settings = DockerComposeYamlLoader.load(@file_path) @key.split('/').each do |k| settings = settings[k] end @environments = settings['environment'] yield(self) if block_given? fetch end