class Kaname::Resource

Public Class Methods

yaml(filename = 'keystone.yml') click to toggle source
# File lib/kaname/resource.rb, line 6
def yaml(filename = 'keystone.yml')
  if File.exist?(filename)
    @_yaml ||= expand_all_tenants(YAML.load_file(filename))
  end
end

Private Class Methods

expand_all_tenants(_yaml) click to toggle source
# File lib/kaname/resource.rb, line 14
def expand_all_tenants _yaml
  list_tenants = Kaname::Adapter::ReadOnly.new.list_tenants

  _yaml.each do |username, config|
    next unless config['all_tenants']
    tenants = list_tenants.map{|tenant| [tenant.name, config['all_tenants']]}
    config['tenants'] = Hash[*tenants.flatten].merge(config['tenants'] || {})
    config.delete('all_tenants')
  end
end