Sha256: 6b62dfc169c37c31650e7cab623ac0ca715b3744b2b134ae2edf1fae57d3708c
Contents?: true
Size: 1.42 KB
Versions: 4
Compression:
Stored size: 1.42 KB
Contents
# The client for interacting with remote Puppet agents to query and modify # remote system state. class Puppet::Network::Client::Resource < Puppet::Network::Client def apply(bucket) case bucket when Puppet::TransObject tmp = Puppet::TransBucket.new tmp.push bucket bucket = tmp bucket.name = Facter["hostname"].value bucket.type = "resource" when Puppet::TransBucket # nothing else raise Puppet::DevError, "You must pass a transportable object, not a %s" % bucket.class end unless @local bucket = Base64.encode64(YAML::dump(bucket)) end report = @driver.apply(bucket, "yaml") return report end def describe(type, name, retrieve = false, ignore = false) Puppet.info "Describing %s[%s]" % [type.to_s.capitalize, name] text = @driver.describe(type, name, retrieve, ignore, "yaml") object = nil if @local object = text else object = YAML::load(Base64.decode64(text)) end return object end def list(type, ignore = false, base = false) bucket = @driver.list(type, ignore, base, "yaml") unless @local bucket = YAML::load(Base64.decode64(bucket)) end return bucket end end # $Id: resource.rb 2259 2007-03-06 19:03:05Z luke $
Version data entries
4 entries across 4 versions & 1 rubygems