puppet-bind/lib/puppet/provider/dns_rr/nsupdate.rb
Nate Riffe c0143b2ca7 Create resource_record type
Abstract out the nsupdate provider logic and implement a new resource_record
type around it which applies no semantic value to its title.

Also: support SPF and TXT records, include isrequired on required parameters
(though it doesn't seem to work as advertised)
2014-09-10 13:02:31 -05:00

45 lines
605 B
Ruby

require 'puppet_bind/provider/nsupdate'
Puppet::Type.type(:dns_rr).provide(:nsupdate) do
include PuppetBind::Provider::NsUpdate
commands :dig => 'dig', :nsupdate => 'nsupdate'
def initialize(value={})
super(value)
@properties = {}
end
def rrdata
query.map { |record| record[:rrdata] }.sort
end
def rrdata=(rrdata)
@properties[:rrdata] = rrdata
end
private
def newdata
resource[:rrdata]
end
def specarray
resource[:spec].split('/')
end
def rrclass
specarray[0]
end
def type
specarray[1]
end
def name
specarray[2]
end
end