module CapistranoMulticonfigParallel::GemHelper

helper used to determine gem versions

Public Instance Methods

fetch_gem_version(gem_name) click to toggle source
# File lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb, line 15
def fetch_gem_version(gem_name)
  version = find_loaded_gem_property(gem_name)
  version.blank? ? nil : get_parsed_version(version)
end
find_loaded_gem(name, property = nil) click to toggle source
# File lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb, line 6
def find_loaded_gem(name, property = nil)
  gem_spec = Gem.loaded_specs.values.find { |repo| repo.name == name }
  gem_spec.present? && property.present? ? gem_spec.send(property).to_s : gem_spec
end
find_loaded_gem_property(gem_name, property = 'version') click to toggle source
# File lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb, line 11
def find_loaded_gem_property(gem_name, property = 'version')
  find_loaded_gem(gem_name, property)
end
format_gem_version(version) click to toggle source
# File lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb, line 27
def format_gem_version(version)
  return version if version.size <= 2
  version.pop until version.size == 2
  version
end
get_parsed_version(version) click to toggle source
# File lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb, line 20
def get_parsed_version(version)
  return 0 if version.blank?
  version = version.to_s.split('.')
  version = format_gem_version(version)
  version.join('.').to_f
end
verify_gem_version(gem_version, version, options = {}) click to toggle source
# File lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb, line 33
def verify_gem_version(gem_version, version, options = {})
  options.stringify_keys!
  version = get_parsed_version(version)
  get_parsed_version(gem_version).send(options.fetch('operator', '<='), version)
end