X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fdebian_org%2Flib%2Ffacter%2Froleaccounts.rb;h=6b3d4db4f81a2d587209f5ce653752d4d63c6134;hb=25cee51c183c4f8d97b380314ad50075bc7d04e6;hp=d95dc04193a401b7fc9739180b27829b9d825a8b;hpb=6f2e5fc86e49c12b12eef39fc69e0e810a32c318;p=mirror%2Fdsa-puppet.git diff --git a/modules/debian_org/lib/facter/roleaccounts.rb b/modules/debian_org/lib/facter/roleaccounts.rb index d95dc0419..6b3d4db4f 100644 --- a/modules/debian_org/lib/facter/roleaccounts.rb +++ b/modules/debian_org/lib/facter/roleaccounts.rb @@ -1,117 +1,47 @@ begin require 'etc' - Facter.add("postgresql_key") do - setcode do - key = nil - keyfile = '/var/lib/postgresql/.ssh/id_rsa.pub' - if FileTest.exist?(keyfile) - key = File.open(keyfile).read.chomp - end - key - end - end - - Facter.add("staticsync_key") do - setcode do - key = nil - keyfile = '/home/staticsync/.ssh/id_rsa.pub' - if FileTest.exist?(keyfile) - key = File.open(keyfile).read.chomp - end - key - end - end - - Facter.add("staticsync_user_exists") do - setcode do - result = false - begin - if Etc.getpwnam('staticsync') - result = true - end - rescue ArgumentError - end - result - end - end - - - Facter.add("weblogsync_key") do - setcode do - key = nil - keyfile = '/home/weblogsync/.ssh/id_rsa.pub' - if FileTest.exist?(keyfile) - key = File.open(keyfile).read.chomp - end - key - end - end - - Facter.add("weblogsync_user_exists") do - setcode do - result = false - begin - if Etc.getpwnam('weblogsync') - result = true - end - rescue ArgumentError - end - result - end - end - - - Facter.add("buildd_key") do - setcode do - key = nil - keyfile = '/home/buildd/.ssh/id_rsa.pub' - if FileTest.exist?(keyfile) - key = File.open(keyfile).read.chomp - end - key - end - end - - Facter.add("buildd_user_exists") do - setcode do - result = false - begin - if Etc.getpwnam('buildd') - result = true + %w{ + buildd + dnsadm + dsa + geodnssync + git + letsencrypt + portforwarder + postgres + }.each do |user| + Facter.add("#{user}_user_exists") do + setcode do + result = false + begin + if Etc.getpwnam(user) + result = true + end + rescue ArgumentError end - rescue ArgumentError - end - result - end - end - - Facter.add("portforwarder_key") do - setcode do - key = nil - keyfile = '/home/portforwarder/.ssh/id_rsa.pub' - if FileTest.exist?(keyfile) - key = File.open(keyfile).read.chomp - end - key - end - end - - Facter.add("portforwarder_user_exists") do - setcode do - result = false - begin - if Etc.getpwnam('portforwarder') - result = true + result + end + end + + Facter.add("#{user}_key") do + setcode do + key = nil + begin + pwinfo = Etc.getpwnam(user) + if pwinfo and pwinfo.dir + keyfile = pwinfo.dir + '/.ssh/id_rsa.pub' + if FileTest.exist?(keyfile) + key = File.open(keyfile).read.chomp + end + end + rescue ArgumentError end - rescue ArgumentError + key end - result end end - - rescue Exception => e end # vim:set et: