Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: modules/base/manifests/init.pp

Issue 4810150141493248: Issue 122 - Puppet ENC via Hiera (Closed)
Patch Set: Puppet ENC via Hiera Created March 4, 2015, 12:32 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
OLDNEW
1 class base { 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 20 matching lines...) Expand all
32 } 32 }
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
43 $servers = hiera("servers")
44 create_resources(base::explicit_host_record, $servers)
45
46 define explicit_host_record(
47 $ip,
48 $ssh_public_key = undef,
49 $role = undef,
50 $dns = undef,
51 $groups = undef,
52 ) {
53
54 if is_array($ip) {
55 $internal_ip = $ip[0]
56 } else {
57 $internal_ip = $ip
58 }
59
60 $fqdn_name = join([$name, $base::zone], ".")
61
62 host{$name:
63 ensure => present,
64 ip => $internal_ip,
65 name => $fqdn_name,
66 host_aliases => $dns ? {
67 undef => [],
68 default => $dns,
69 }
70 }
71
72 if $ssh_public_key != undef {
73
74 $name_key = $dns ? {
75 undef => $fqdn_name,
76 default => $dns,
77 }
78
79 @sshkey {$name:
80 name => $name_key,
81 key => $ssh_public_key,
82 type => ssh-rsa,
83 host_aliases => $ip,
84 }
85 }
86
87 }
42 } 88 }
89
OLDNEW

Powered by Google App Engine
This is Rietveld