f00623fda98a7365fb89488a7fd4b458dd4f0e8a
[mirror/dsa-puppet.git] / modules / debian_org / lib / facter / roleaccounts.rb
1 begin
2     require 'etc'
3
4     %w{git}.each do |user|
5         Facter.add("#{user}_user_exists") do
6             setcode do
7                 result = false
8                 begin
9                     if Etc.getpwnam(user)
10                         result = true
11                     end
12                 rescue ArgumentError
13                 end
14                 result
15             end
16         end
17
18         Facter.add("#{user}_key") do
19             setcode do
20                 key = nil
21                 begin
22                     pwinfo = Etc.getpwnam(user)
23                     if pwinfo and pwinfo.dir
24                         keyfile = pwinfo.dir + '/.ssh/id_rsa.pub'
25                         if FileTest.exist?(keyfile)
26                             key = File.open(keyfile).read.chomp
27                         end
28                     end
29                 rescue ArgumentError
30                 end
31                 key
32             end
33         end
34     end
35
36     Facter.add("postgresql_key") do
37         setcode do
38             key = nil
39             keyfile = '/var/lib/postgresql/.ssh/id_rsa.pub'
40             if FileTest.exist?(keyfile)
41                 key = File.open(keyfile).read.chomp
42             end
43             key
44         end
45     end
46
47     Facter.add("staticsync_key") do
48         setcode do
49             key = nil
50             keyfile = '/home/staticsync/.ssh/id_rsa.pub'
51             if FileTest.exist?(keyfile)
52                 key = File.open(keyfile).read.chomp
53             end
54             key
55         end
56     end
57
58     Facter.add("staticsync_user_exists") do
59         setcode do
60             result = false
61             begin
62                 if Etc.getpwnam('staticsync')
63                     result = true
64                 end
65             rescue ArgumentError
66             end
67             result
68         end
69     end
70
71
72     Facter.add("weblogsync_key") do
73         setcode do
74             key = nil
75             keyfile = '/home/weblogsync/.ssh/id_rsa.pub'
76             if FileTest.exist?(keyfile)
77                 key = File.open(keyfile).read.chomp
78             end
79             key
80         end
81     end
82
83     Facter.add("weblogsync_user_exists") do
84         setcode do
85             result = false
86             begin
87                 if Etc.getpwnam('weblogsync')
88                     result = true
89                 end
90             rescue ArgumentError
91             end
92             result
93         end
94     end
95
96
97     Facter.add("buildd_key") do
98         setcode do
99             key = nil
100             keyfile = '/home/buildd/.ssh/id_rsa.pub'
101             if FileTest.exist?(keyfile)
102                 key = File.open(keyfile).read.chomp
103             end
104             key
105         end
106     end
107
108     Facter.add("buildd_user_exists") do
109         setcode do
110             result = false
111             begin
112                 if Etc.getpwnam('buildd')
113                     result = true
114                 end
115             rescue ArgumentError
116             end
117             result
118         end
119     end
120
121     Facter.add("portforwarder_key") do
122         setcode do
123             key = nil
124             keyfile = '/home/portforwarder/.ssh/id_rsa.pub'
125             if FileTest.exist?(keyfile)
126                 key = File.open(keyfile).read.chomp
127             end
128             key
129         end
130     end
131
132     Facter.add("portforwarder_user_exists") do
133         setcode do
134             result = false
135             begin
136                 if Etc.getpwnam('portforwarder')
137                     result = true
138                 end
139             rescue ArgumentError
140             end
141             result
142         end
143     end
144
145
146
147 rescue Exception => e
148 end
149 # vim:set et:
150 # vim:set ts=4:
151 # vim:set shiftwidth=4: