Методът на заявката се извиква от основния тип Puppet::Provider::Package
. Методът properties
попълва property_hash
с помощта на метода query
:
# Look up the current status.
def properties
if @property_hash.empty?
@property_hash = query || {:ensure => :absent}
@property_hash[:ensure] = :absent if @property_hash.empty?
end
@property_hash.dup
end
В rubydoc на Puppet::Provider
се казва следното за property_hash
:
Хеш на свойството - важната променлива на екземпляр @property_hash
съдържа всички текущи стойности на състоянието на свойствата (тя е лениво изградена). Важно е тези стойности да се управляват по подходящ начин в методите {instances}, {prefetch} и в методите, които променят текущото състояние (тези, които променят жизнения цикъл (създава, унищожава) или променя някаква стойност, отразена, подкрепена от свойство) .
Следователно заявката трябва да върне хеш, който отразява текущото състояние на пакета, изразено в пакета на Puppet свойства.
Това не е документирано AFAIK. Разбрах го чрез обратно инженерство.
Надявам се това да помогне. Късмет!
person
Lodewijk Bogaards
schedule
01.12.2013