module Chef::Knife::VcCatalogCommon
Public Class Methods
included(includer)
click to toggle source
# File lib/chef/knife/common/vc_catalog_common.rb, line 22 def self.included(includer) includer.class_eval do option :vcloud_catalog, :long => "--catalog CATALOG_NAME", :description => "Catalog to whom Catalog Item belongs", :proc => Proc.new { |key| Chef::Config[:knife][:vcloud_catalog] = key } end end
Public Instance Methods
get_catalog(catalog_arg)
click to toggle source
# File lib/chef/knife/common/vc_catalog_common.rb, line 31 def get_catalog(catalog_arg) catalog = nil org_name = locate_org_option org = connection.get_organization_by_name org_name catalog = connection.get_catalog_by_name org, catalog_arg raise ArgumentError, "Catalog #{catalog_arg} not found" unless catalog catalog end
get_catalog_item(catalog_item_arg)
click to toggle source
# File lib/chef/knife/common/vc_catalog_common.rb, line 42 def get_catalog_item(catalog_item_arg) item = nil catalog_name = locate_config_value(:vcloud_catalog) unless catalog_name notice_msg("--catalog not specified, assuming CATALOG_ITEM is an ID") item = connection.get_catalog_item catalog_item_arg else catalog = get_catalog(catalog_name) item = connection.get_catalog_item_by_name catalog[:id], catalog_item_arg end raise ArgumentError, "Catalog Item #{catalog_item_arg} not found" unless item item end