summaryrefslogtreecommitdiff
path: root/lib/puppet/type/dns_zone2.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/type/dns_zone2.rb')
-rw-r--r--lib/puppet/type/dns_zone2.rb23
1 files changed, 15 insertions, 8 deletions
diff --git a/lib/puppet/type/dns_zone2.rb b/lib/puppet/type/dns_zone2.rb
index 6cee6f2..61fe8ce 100644
--- a/lib/puppet/type/dns_zone2.rb
+++ b/lib/puppet/type/dns_zone2.rb
@@ -1,10 +1,17 @@
-Puppet::Type.newtype(:dns_zone2, :self_refresh => true) do
- @doc = %q{
- }
+Puppet::Type.newtype(:dns_zone2, self_refresh: true) do
+ @doc = <<~EOF
+ A complete DNS zonefile.
+
+ The SOA record comes backed in, this for two reasons:
+ 1. A SOA record is REQUIRED in all zonefiles, so it doesn't make
+ sense to allow it to be emitted.
+ 2. This is the only way to ensure that our serial is only updated
+ when something else has actually changed in the zone.
+ EOF
newproperty(:ensure) do
newvalue(:present) do
- provider.write_zone (resource.should_content)
+ provider.write_zone(resource.should_content)
end
# This should ideally remove the zone. This is however managed
@@ -32,7 +39,7 @@ Puppet::Type.newtype(:dns_zone2, :self_refresh => true) do
provider.write_zone(should_content)
end
- newparam(:origin, :namevar => true) do
+ newparam(:origin, namevar: true) do
munge do |value|
if value[-1] == '.'
value
@@ -58,7 +65,6 @@ Puppet::Type.newtype(:dns_zone2, :self_refresh => true) do
defaultto :master
end
-
newparam(:default_ttl) do
defaultto '300'
end
@@ -112,10 +118,11 @@ Puppet::Type.newtype(:dns_zone2, :self_refresh => true) do
# This prevents the directory purge on /var/named/zones from deleting us.
def generate
- [Puppet::Type.type(:file).new({
+ params = {
ensure: :present,
path: provider.filename,
- })]
+ }
+ [Puppet::Type.type(:file).new(params)]
end
def should_content