class Curator::SettingsUpdater

Attributes

counter[RW]
logger[R]
repositories[R]

Public Class Methods

new(repositories = Curator.repositories, options = {}) click to toggle source
# File lib/curator/settings_updater.rb, line 6
def initialize(repositories = Curator.repositories, options = {})
  @repositories = repositories
  @verbose = options.fetch(:verbose, true)
  @logger = options.fetch(:logger, STDOUT)
  @counter = 0
end

Public Instance Methods

run!() click to toggle source
# File lib/curator/settings_updater.rb, line 13
def run!
  announce "Preparing to apply settings to all repositories..."
  repositories.each do |repository|
    next unless repository.settings_uncommitted?
    announce " * Updating settings for #{repository}...", :finish => false,
                                                          :header => false
    if repository.apply_settings!
      finish
    else
      finish "Failed."
    end
    self.counter += 1
  end
  complete!
end

Private Instance Methods

announce(msg, options = {}) click to toggle source
# File lib/curator/settings_updater.rb, line 40
def announce(msg, options = {})
  return unless verbose?
  finish = options.fetch(:finish, true)
  header = options.fetch(:header, true)
  logger.write "[Curator] " if header
  logger.write msg
  logger.write "\n" if finish
end
any_run?() click to toggle source
# File lib/curator/settings_updater.rb, line 58
def any_run?
  counter > 0
end
complete!() click to toggle source
# File lib/curator/settings_updater.rb, line 32
def complete!
  if any_run?
    announce "Done!"
  else
    announce "Nothing to do."
  end
end
finish(msg = "Done!") click to toggle source
# File lib/curator/settings_updater.rb, line 49
def finish(msg = "Done!")
  return unless verbose?
  logger.write " #{msg}\n"
end
verbose?() click to toggle source
# File lib/curator/settings_updater.rb, line 54
def verbose?
  @verbose
end