module Makit::Gems
def self.get_installed_gem_version(gem_name)
def self.get_installed_gem_version(gem_name) versions = `gem list #{gem_name}`.split("(")[1].split(")")[0].split(",") versions.first.strip end
def self.get_latest_gem_version(gem_name)
def self.get_latest_gem_version(gem_name) `gem search #{gem_name} --remote --exact`.split("(")[1].split(")")[0] end
def self.install_latest_gem(gem_name)
def self.install_latest_gem(gem_name) if(!is_gem_installed(gem_name)) "gem install #{gem_name}".run puts " #{gem_name} gem installed".colorize(:green) else latest_version = get_latest_gem_version(gem_name) installed_version = get_installed_gem_version(gem_name) if(installed_version != latest_version) "gem install #{gem_name}".run puts " #{gem_name} gem updated to #{latest_version}".colorize(:green) else puts " #{gem_name} gem is up to date".colorize(:green) end end end
def self.is_gem_installed(gem_name)
def self.is_gem_installed(gem_name) `gem list #{gem_name}` $?.success? end