class R10kDiff::PuppetfileDiff

Public Class Methods

new(oldfile, newfile) click to toggle source

Represents the difference between the puppetfile from one commit to another

# File lib/r10kdiff.rb, line 86
def initialize(oldfile, newfile)
  @oldfile = oldfile
  @newfile = newfile
end

Public Instance Methods

additions() click to toggle source
# File lib/r10kdiff.rb, line 102
def additions
  additions = []
  @newfile.modules.each do |name, new_module|
    additions << new_module unless @oldfile.modules[name]
  end
  additions
end
changes() click to toggle source
# File lib/r10kdiff.rb, line 91
def changes
  changed_modules = []
  modules_in_common = Set.new(@oldfile.modules.keys).intersection Set.new(@newfile.modules.keys)
  modules_in_common.each do |name|
    new_module = @newfile.modules[name]
    old_module = @oldfile.modules[name]
    changed_modules << [old_module, new_module] if new_module.different? old_module
  end
  changed_modules
end
print_differences(include_url) click to toggle source
removals() click to toggle source
# File lib/r10kdiff.rb, line 110
def removals
  removals = []
  @oldfile.modules.each do |name, old_module|
    removals << old_module unless @newfile.modules[name]
  end
  removals
end