Module: CapistranoMulticonfigParallel::GemHelper
- Included in:
- CapistranoMulticonfigParallel, ApplicationHelper
- Defined in:
- lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb
Overview
helper used to determine gem versions
Class Method Summary collapse
- .fetch_gem_version(gem_name) ⇒ Object
- .find_loaded_gem(name, property = nil) ⇒ Object
- .find_loaded_gem_property(gem_name, property = 'version') ⇒ Object
- .format_gem_version(version) ⇒ Object
- .get_parsed_version(version) ⇒ Object
- .verify_gem_version(gem_version, version, options = {}) ⇒ Object
Class Method Details
.fetch_gem_version(gem_name) ⇒ Object
15 16 17 18 |
# 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) ⇒ Object
6 7 8 9 |
# 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') ⇒ Object
11 12 13 |
# 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) ⇒ Object
27 28 29 30 31 |
# 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) ⇒ Object
20 21 22 23 24 25 |
# 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 = {}) ⇒ Object
33 34 35 36 37 |
# File 'lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb', line 33 def verify_gem_version(gem_version, version, = {}) .stringify_keys! version = get_parsed_version(version) get_parsed_version(gem_version).send(.fetch('operator', '<='), version) end |