Puppet Function: dns_cname
- Defined in:
- lib/puppet/functions/dns_cname.rb
- Function type:
- Ruby 4.x API
Overview
Retrieves a DNS CNAME record and returns it as a string.
An optional lambda can be given to return a default value in case the lookup fails. The lambda will only be called if the lookup failed.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/puppet/functions/dns_cname.rb', line 5 Puppet::Functions.create_function(:dns_cname) do dispatch :dns_cname do param 'String', :record end dispatch :dns_cname_with_default do param 'String', :record block_param end def dns_cname(record) Resolv::DNS.new.getresource( record, Resolv::DNS::Resource::IN::CNAME ).name.to_s end def dns_cname_with_default(record) dns_cname(record) rescue Resolv::ResolvError yield end end |