switch to new hostname/ip
[mirror/dsa-puppet.git] / modules / roles / templates / static-mirroring / staticsync-authorized_keys.erb
1 ##
2 ## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
3 ##
4
5 <%=
6 def getstaticsynckey(host)
7     key = nil
8     begin
9         facts = YAML.load(File.open("/var/lib/puppet/yaml/facts/#{host}.yaml").read)
10         return facts.values['staticsync_key']
11     rescue Exception => e
12     end
13     return key
14 end
15
16 localinfo = scope.lookupvar('site::localinfo')
17 allnodeinfo = scope.lookupvar('site::allnodeinfo')
18
19 callers = []
20 localinfo.keys.sort.each do |node|
21     if localinfo[node]['static_mirror'] or localinfo[node]['static_source'] or localinfo[node]['static_master']
22         key = getstaticsynckey(node)
23         callers << { 'node' => node, 'addr' => allnodeinfo[node]['ipHostNumber'], 'key' => key}
24     end
25 end
26
27 callers << { 'node' => 'moszumanska.debian.org', 'addr' => allnodeinfo['moszumanska.debian.org']['ipHostNumber'], 'key' => 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCXHFIkIhOC5iDa0d0IN5w6tUUL2T2iXCYcS2+dandE9f550OpKQ/evUZhw4EERNYDA3G7GV3jJzQR0j/KZWJUtDCichmqS94xJqXURmZVNeLXWY9x/N7CB1iG1Iblu6sgyTUrs7N6Wb0fUab3AXAi9KIXdwNLY622reR9T//bRULPVIl5VFpYtGBPT9n3wR7fLQ4ndEcUmEGcM4jRbpLmye4QGgJotuzeBWUpX+U648Yly6U7NlAJIWPUt7hEzMz2AC81SLhGCwTk6sb19n2dO6WN2ndynp8PLG1emtgd1/DaeaRyPcitoWgSoDNgKNk3zLIDtCdSYvFI8xXrm6cK3 staticsync@wagner'}
28
29 lines = []
30 for m in callers do
31     lines << '# ' + m['node']
32     if m['key'].nil?
33         lines << "# no key for node"
34     else
35         lines << "command=\"/usr/local/bin/staticsync-ssh-wrap #{m['node']}\"," +
36                  'no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-user-rc,' +
37                  'from="' + m['addr'].join(',') + '" ' +
38                  m['key']
39     end
40 end
41
42 lines.join("\n")
43 # vim:set et:
44 # vim:set sts=4 ts=4:
45 # vim:set shiftwidth=4:
46 %>