summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/puppet/type/dns_record.rb2
-rw-r--r--lib/puppet/type/dns_zone.rb6
2 files changed, 8 insertions, 0 deletions
diff --git a/lib/puppet/type/dns_record.rb b/lib/puppet/type/dns_record.rb
index 8463172..eaa3f0f 100644
--- a/lib/puppet/type/dns_record.rb
+++ b/lib/puppet/type/dns_record.rb
@@ -27,6 +27,8 @@ Puppet::Type.newtype(:dns_record) do
newproperty(:ttl) do
desc "Optional TTL for record"
+ # TODO How does newvalues work with an optional parameter?
+ # newvalues /([0-9]+[SsMmHhDdWw]?)+/
end
autonotify('dns_zone') { [ parameter(:zone).value ] }
diff --git a/lib/puppet/type/dns_zone.rb b/lib/puppet/type/dns_zone.rb
index 3f49bc7..02868ff 100644
--- a/lib/puppet/type/dns_zone.rb
+++ b/lib/puppet/type/dns_zone.rb
@@ -62,11 +62,13 @@ Puppet::Type.newtype(:dns_zone) do
end
newparam(:zone, :namevar => true) do
+ newvalues(/[^.]$/)
end
newparam(:ns_ttl) do
desc "TTL for NS records"
defaultto '1w'
+ newvalues /([0-9]+[SsMmHhDdWw]?)+/
end
newproperty(:ns, :array_matching => :all) do
@@ -87,20 +89,24 @@ Puppet::Type.newtype(:dns_zone) do
newproperty(:soa_refresh) do
desc "SOA refresh, number of seconds after which secondary name servers should query the master for the SOA record"
defaultto '24h'
+ newvalues /([0-9]+[SsMmHhDdWw]?)+/
end
newproperty(:retry) do
desc "SOA retry, number of seconds after which seconday name servers should retry to requeth the serial from the master, must be less than refresh"
defaultto '2h'
+ newvalues /([0-9]+[SsMmHhDdWw]?)+/
end
newproperty(:expire) do
desc "SOA expire, Number of seconds secondary servers should continue answer queries for this zone if the master dissapears"
defaultto '1000h'
+ newvalues /([0-9]+[SsMmHhDdWw]?)+/
end
newproperty(:negative_ttl) do
desc "SOA negative_ttl, how long can clients cache a negative response"
defaultto '2d'
+ newvalues /([0-9]+[SsMmHhDdWw]?)+/
end
end