Sha256: 38d3d9a97a6f1a5f6060eea9161ad363a603dc1c461b62c79cf738c17adf85dd
Contents?: true
Size: 1.06 KB
Versions: 90
Compression:
Stored size: 1.06 KB
Contents
class Hiera class Scope CALLING_CLASS = "calling_class" CALLING_MODULE = "calling_module" MODULE_NAME = "module_name" attr_reader :real def initialize(real) @real = real end def [](key) if key == CALLING_CLASS ans = find_hostclass(@real) elsif key == CALLING_MODULE ans = @real.lookupvar(MODULE_NAME) else ans = @real.lookupvar(key) end if ans.nil? or ans == "" nil else ans end end def include?(key) if key == CALLING_CLASS or key == CALLING_MODULE true else @real.lookupvar(key) != "" end end def catalog @real.catalog end def resource @real.resource end def compiler @real.compiler end def find_hostclass(scope) if scope.source and scope.source.type == :hostclass return scope.source.name.downcase elsif scope.parent return find_hostclass(scope.parent) else return nil end end private :find_hostclass end end
Version data entries
90 entries across 90 versions & 2 rubygems