 Issue 4810150141493248:
  Issue 122 - Puppet ENC via Hiera  (Closed)
    
  
    Issue 4810150141493248:
  Issue 122 - Puppet ENC via Hiera  (Closed) 
  | Left: | ||
| Right: | 
| LEFT | RIGHT | 
|---|---|
| 1 class base ($authority='adblockplus.org') { | 1 class base ($zone='adblockplus.org') { | 
| 2 stage {'pre': before => Stage['main']} | 2 stage {'pre': before => Stage['main']} | 
| 3 stage {'post': require => Stage['main']} | 3 stage {'post': require => Stage['main']} | 
| 4 | 4 | 
| 5 class {'users': | 5 class {'users': | 
| 6 stage => 'pre', | 6 stage => 'pre', | 
| 7 } | 7 } | 
| 8 | 8 | 
| 9 class {'apt': | 9 class {'apt': | 
| 10 always_apt_update => true | 10 always_apt_update => true | 
| 11 } | 11 } | 
| (...skipping 21 matching lines...) Expand all Loading... | |
| 33 | 33 | 
| 34 service {'cron': | 34 service {'cron': | 
| 35 ensure => running, | 35 ensure => running, | 
| 36 enable => true, | 36 enable => true, | 
| 37 } | 37 } | 
| 38 | 38 | 
| 39 class {'logrotate': | 39 class {'logrotate': | 
| 40 stage => 'post' | 40 stage => 'post' | 
| 41 } | 41 } | 
| 42 | 42 | 
| 43 $servers = hiera("servers") | 43 $servers = hiera('servers') | 
| 44 create_resources(base::explicit_host_record, $servers) | 44 create_resources(base::explicit_host_record, $servers) | 
| 45 | 45 | 
| 46 define explicit_host_record($ip, $ssh_public_key=undef, $role=undef, $dns=unde f) { | 46 define explicit_host_record( | 
| 47 $ip, | |
| 48 $ssh_public_key = undef, | |
| 49 $role = undef, | |
| 50 $dns = undef, | |
| 51 $groups = undef, | |
| 52 ) { | |
| 47 | 53 | 
| 48 if is_array($ip) { | 54 if is_array($ip) { | 
| 49 $internal_ip = $ip[0] | 55 $internal_ip = $ip[0] | 
| 50 } else { | 56 } else { | 
| 51 $internal_ip = $ip | 57 $internal_ip = $ip | 
| 52 } | 58 } | 
| 53 | 59 | 
| 54 $fqdn_name = join([$name, $authority], ".") | 60 $fqdn_name = join([$name, $base::zone], '.') | 
| 55 | 61 | 
| 56 host{"$name,$internal_ip": | 62 host{$name: | 
| 
Wladimir Palant
2014/11/17 16:43:36
Given that each name is resolved to a single IP ad
 
mathias
2014/11/27 00:30:18
Done.
 | |
| 57 ensure => present, | 63 ensure => present, | 
| 58 ip => $internal_ip, | 64 ip => $internal_ip, | 
| 59 name => $fqdn_name, | 65 name => $fqdn_name, | 
| 60 host_aliases => $dns ? { | 66 host_aliases => $dns ? { | 
| 61 undef => [], | 67 undef => [], | 
| 62 default => $dns, | 68 default => $dns, | 
| 63 } | 69 } | 
| 64 } | 70 } | 
| 65 | 71 | 
| 66 if $ssh_public_key != undef { | 72 if $ssh_public_key != undef { | 
| 67 | 73 | 
| 68 $name_key = $dns ? { | 74 $name_key = $dns ? { | 
| 69 undef => $fqdn_name, | 75 undef => $fqdn_name, | 
| 70 default => $dns, | 76 default => $dns, | 
| 71 } | 77 } | 
| 72 | 78 | 
| 73 @sshkey {$name: | 79 @sshkey {$name: | 
| 74 name => $name_key, | 80 name => $name_key, | 
| 75 key => $ssh_public_key, | 81 key => $ssh_public_key, | 
| 76 type => ssh-rsa, | 82 type => ssh-rsa, | 
| 77 host_aliases => $ip, | 83 host_aliases => $ip, | 
| 78 } | 84 } | 
| 79 } | 85 } | 
| 80 | 86 | 
| 81 } | 87 } | 
| 82 } | 88 } | 
| 83 | 89 | 
| LEFT | RIGHT |