update-report: migrate formulae to casks. (#375)

This commit is contained in:
Anastasia Sulyagina 2016-06-22 16:36:17 +04:00 committed by Mike McQuaid
parent 6dc72f2679
commit 2d8b4376df

View File

@ -250,12 +250,28 @@ class Reporter
tabs = dir.subdirs.map { |d| Tab.for_keg(Keg.new(d)) }
next unless tabs.first.tap == tap # skip if installed formula is not from this tap.
new_tap = Tap.fetch(new_tap_name)
# For formulae migrated to cask: Auto-install cask or provide install instructions.
if new_tap_name == "caskroom/cask"
system HOMEBREW_BREW_FILE, "uninstall", name
if new_tap.installed? && (HOMEBREW_REPOSITORY/"Caskroom").directory?
ohai "#{name} has been moved to Homebrew Cask. Installing #{name}..."
system HOMEBREW_BREW_FILE, "uninstall", "--force", name
system HOMEBREW_BREW_FILE, "cask", "install", name
else
ohai "#{name} has been moved to Homebrew Cask.", <<-EOS.undent
To uninstall the formula and install the cask run:
brew uninstall --force #{name}
brew cask install #{name}
EOS
end
else
new_tap.install unless new_tap.installed?
# update tap for each Tab
tabs.each { |tab| tab.tap = new_tap }
tabs.each(&:write)
end
end
end
def migrate_formula_rename
report[:R].each do |old_full_name, new_full_name|