Sha256: 93efbe7ae36b0cbf9383635f445618686e2da95d1807542e07b6e64f63b373ea
Contents?: true
Size: 819 Bytes
Versions: 6
Compression:
Stored size: 819 Bytes
Contents
require 'puppet/parameter' # This specialized {Puppet::Parameter} handles munging of package options. # Package options are passed as an array of key value pairs. Special munging is # required as the keys and values needs to be quoted in a safe way. # class Puppet::Parameter::PackageOptions < Puppet::Parameter def unsafe_munge(values) values = [values] unless values.is_a? Array values.collect do |val| case val when Hash safe_hash = {} val.each_pair do |k, v| safe_hash[quote(k)] = quote(v) end safe_hash when String quote(val) else fail("Expected either a string or hash of options") end end end # @api private def quote(value) value.include?(' ') ? %Q["#{value.gsub(/"/, '\"')}"] : value end end
Version data entries
6 entries across 6 versions & 2 rubygems