class ChefRake::Task::Gem
Public Class Methods
new()
click to toggle source
Calls superclass method
# File lib/chef/raketasks/gem.rb, line 23 def initialize super namespace :gem do desc 'gem:install' namespace :install do def install_gem(name, version, source) cmd = 'chef gem install ' cmd << "#{name} " cmd << "-v #{version} " unless version.nil? cmd << "-s #{source} " unless source.nil? cmd << '--no-document' sh cmd end # NAMESPACE: gem:install:static desc 'Installs necessary static gems for kitchen' task static: %i[ gem:install:static:kitchen ] namespace :static do desc 'Installs kitchen-static for kitchen' task :kitchen, [:version, :source] do |_t, args| install_gem('kitchen-static', args.version, args.source) end end # NAMESPACE: gem:install:vcenter desc 'Installs necessary vcenter gems for kitchen' task vcenter: %i[ gem:install:vcenter:sdk gem:install:vcenter:kitchen ] namespace :vcenter do desc 'Installs vcenter sdk for kitchen' task :sdk, [:version, :source] do |_t, args| install_gem('vsphere-automation-sdk', args.version, args.source) end desc 'Installs kitchen-vcenter for kitchen' task :kitchen, [:version, :source] do |_t, args| install_gem('kitchen-vcenter', args.version, args.source) end end # namespace vcenter end # namespace install end # namespace gem end
Public Instance Methods
install_gem(name, version, source)
click to toggle source
# File lib/chef/raketasks/gem.rb, line 29 def install_gem(name, version, source) cmd = 'chef gem install ' cmd << "#{name} " cmd << "-v #{version} " unless version.nil? cmd << "-s #{source} " unless source.nil? cmd << '--no-document' sh cmd end