module DockerBoss::Helpers
Public Class Methods
hash_diff(old, new)
click to toggle source
# File lib/docker_boss/helpers.rb, line 19 def self.hash_diff(old, new) changes = { :added => {}, :removed => {}, :changed => {} } new.each do |k,v| if old.has_key? k changes[:changed][k] = v if old[k] != v else changes[:added][k] = v end end old.each do |k,v| changes[:removed][k] = v unless new.has_key? k end changes end
render_erb(template_str, data)
click to toggle source
# File lib/docker_boss/helpers.rb, line 7 def self.render_erb(template_str, data) tmpl = ERB.new(template_str) ns = OpenStruct.new(data) ns.extend(TemplateHelpers) tmpl.result(ns.instance_eval { binding }) end
render_erb_file(file, data)
click to toggle source
# File lib/docker_boss/helpers.rb, line 14 def self.render_erb_file(file, data) contents = File.read(file) render_erb(contents, data) end