Module: KumoDockerCloud::StackFile
- Defined in:
- lib/kumo_dockercloud/stack_file.rb
Class Method Summary collapse
- .create_from_template(stack_template, config, env_vars) ⇒ Object
- .escape_characters_that_need_special_handling(env_hash) ⇒ Object
Class Method Details
.create_from_template(stack_template, config, env_vars) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/kumo_dockercloud/stack_file.rb', line 5 def self.create_from_template(stack_template, config, env_vars) parsed = YAML.load(ERB.new(stack_template).result(config.get_binding)) converted_env_vars = make_all_root_level_keys_strings(env_vars) env_vars.each do |key, _| key_string = key.to_s parsed[key_string]['environment'] ||= {} parsed[key_string]['environment'].merge!(converted_env_vars.fetch(key_string)) parsed[key_string]['environment'] = escape_characters_that_need_special_handling(parsed[key_string]['environment']) end parsed end |
.escape_characters_that_need_special_handling(env_hash) ⇒ Object
24 25 26 |
# File 'lib/kumo_dockercloud/stack_file.rb', line 24 def self.escape_characters_that_need_special_handling(env_hash) env_hash.keys.reduce({}) { |acc, key| acc[key] = env_hash[key].gsub(/[$]{1}/, "$$"); acc } end |