Class: Blufin::Update
- Inherits:
-
Object
- Object
- Blufin::Update
- Defined in:
- lib/core/update.rb
Class Method Summary collapse
-
.run(gem_name) ⇒ Object
Updates ruby-gem.
Class Method Details
.run(gem_name) ⇒ Object
Updates ruby-gem.
7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/core/update.rb', line 7 def self.run(gem_name) gems = Blufin::Constants::gems raise RuntimeError, "Invalid gem name: #{gem_name}" unless gems.keys.include?(gem_name) Blufin::Terminal::info("Updating gem: #{Blufin::Terminal::format_action(gem_name)}") # Uninstall all gems (including upstream). gems[gem_name][:upstream].each { |upstream_gem| Blufin::Terminal::execute("gem uninstall #{upstream_gem} --force -I -x") } Blufin::Terminal::execute("gem uninstall #{gem_name} --force -I -x") # Re-install all gems (including upstream). gems[gem_name][:upstream].each { |upstream_gem| Blufin::Terminal::execute("gem install #{upstream_gem}") } res = Blufin::Terminal::execute("gem install #{gem_name}", capture: true) Blufin::Terminal::success("Your are now on: #{Blufin::Terminal::format_highlight(`gem list | grep "#{gem_name} "`).gsub("\n", '')}", Blufin::Arrays::convert_string_to_line_array(res[0])) end |