From 812c3f4d6162cf7af8f8cbedb6abb6d72bd537e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Fri, 5 May 2023 01:46:46 +0200 Subject: "Working" product. --- lib/facter/dns_zone_serial.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'lib/facter') diff --git a/lib/facter/dns_zone_serial.rb b/lib/facter/dns_zone_serial.rb index 6f25148..6575757 100644 --- a/lib/facter/dns_zone_serial.rb +++ b/lib/facter/dns_zone_serial.rb @@ -1,5 +1,13 @@ require 'resolv' +def ensure_period(s) + if s[-1] == '.' + s + else + "#{s}." + end +end + Facter.add(:dns_zone_serial) do confine do Facter::Util::Resolution.which('named-checkconf') @@ -13,7 +21,8 @@ Facter.add(:dns_zone_serial) do .filter { |zone| zone.last == 'master' } zone_map = {} zones.map do |zone| - zone_map["#{zone[0]}."] = dns.getresource(zone[0], Resolv::DNS::Resource::IN::SOA).serial + z = ensure_period(zone[0]) + zone_map[z] = dns.getresource(z, Resolv::DNS::Resource::IN::SOA).serial end zone_map end -- cgit v1.2.3