class HerokuBuilder::EnvVar
Public Instance Methods
config_env_changes(name, config_vars)
click to toggle source
# File lib/heroku_builder/env_var.rb, line 31 def config_env_changes(name, config_vars) diff_config_vars(get_config_vars(name), config_vars) end
diff_config_vars(current, proposed)
click to toggle source
# File lib/heroku_builder/env_var.rb, line 20 def diff_config_vars(current, proposed) diffs = HashDiff.diff(current, proposed) diffs.select { |i| i.first.match(/~|\+/) }.map do |diff| if diff.first == '~' "Updating #{diff[1]} from: '#{diff[2]}' to: '#{diff[3]}'" else "Adding #{diff[1]} with: '#{diff[2]}'" end end end
get_config_vars(name)
click to toggle source
# File lib/heroku_builder/env_var.rb, line 4 def get_config_vars(name) @config_vars ||= conn.config_var.info(name) end
set_config_vars(name, config_vars)
click to toggle source
# File lib/heroku_builder/env_var.rb, line 8 def set_config_vars(name, config_vars) env_vars = config_vars if config_vars.is_a? Array env_vars = {}.tap do |hsh| config_vars.each do |args| hsh.merge!(args) end end end conn.config_var.update(name, env_vars) end