class Luban::Deployment::Packages::Gem

Public Class Methods

gem_name() click to toggle source
# File lib/luban/deployment/packages/gem.rb, line 8
def gem_name
  @gem_name ||= name.split('::').last.snakecase.gsub('_', '-')
end

Protected Class Methods

get_latest_version() click to toggle source
# File lib/luban/deployment/packages/gem.rb, line 14
def get_latest_version
  require 'json'
  JSON.parse(`curl https://rubygems.org/api/v1/versions/#{gem_name}/latest.json 2>/dev/null`)['version']
end

Protected Instance Methods

setup_provision_tasks() click to toggle source
# File lib/luban/deployment/packages/gem.rb, line 22
def setup_provision_tasks
  super
  provision_tasks[:install].switch :install_doc, "Install #{self.class.gem_name} document"
end