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

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

Issue 29321355: Issue 2600 - Normalize ownership and priviliges for Nginx logs (Closed)
Patch Set: Apply 80 character line length formatting Created July 13, 2015, 1:23 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 class nginx ( 1 class nginx (
2 $worker_processes = $nginx::params::worker_processes, 2 $worker_processes = $nginx::params::worker_processes,
3 $worker_connections = $nginx::params::worker_connections, 3 $worker_connections = $nginx::params::worker_connections,
4 $ssl_session_cache = $nginx::params::ssl_session_cache 4 $ssl_session_cache = $nginx::params::ssl_session_cache
5 ) inherits nginx::params { 5 ) inherits nginx::params {
6 6
7 apt::source {'nginx': 7 apt::source {'nginx':
8 location => "http://nginx.org/packages/ubuntu", 8 location => "http://nginx.org/packages/ubuntu",
9 repos => "nginx", 9 repos => "nginx",
10 key => "7BD9BF62", 10 key => "7BD9BF62",
(...skipping 10 matching lines...) Expand all
21 ensure => '1.8.0-1~precise', 21 ensure => '1.8.0-1~precise',
22 require => Apt::Source['nginx'] 22 require => Apt::Source['nginx']
23 } 23 }
24 24
25 File { 25 File {
26 owner => root, 26 owner => root,
27 group => root, 27 group => root,
28 mode => 0644, 28 mode => 0644,
29 } 29 }
30 30
31 Exec {
32 path => '/usr/bin:/bin',
33 logoutput => 'on_failure',
34 }
35
36
31 file {'/etc/nginx/nginx.conf': 37 file {'/etc/nginx/nginx.conf':
32 content => template('nginx/nginx.conf.erb'), 38 content => template('nginx/nginx.conf.erb'),
33 require => Package['nginx'], 39 require => Package['nginx'],
34 notify => Service['nginx'] 40 notify => Service['nginx']
35 } 41 }
36 42
37 file {'/etc/nginx/sites-available': 43 file {'/etc/nginx/sites-available':
38 ensure => directory, 44 ensure => directory,
39 require => Package['nginx'] 45 require => Package['nginx']
40 } 46 }
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 require => File["/etc/nginx/sites-available/${domain}"], 118 require => File["/etc/nginx/sites-available/${domain}"],
113 content => template('nginx/logrotate.erb') 119 content => template('nginx/logrotate.erb')
114 } 120 }
115 } 121 }
116 122
117 file {'/etc/logrotate.d/nginx': 123 file {'/etc/logrotate.d/nginx':
118 source => 'puppet:///modules/nginx/logrotate', 124 source => 'puppet:///modules/nginx/logrotate',
119 require => Package['nginx'] 125 require => Package['nginx']
120 } 126 }
121 127
128 $find_cmd_base = [
129 'find', '/var/log/nginx',
130 '-mindepth', '1', '-maxdepth', '1', '-type', 'f',
131 ]
132
133 # Kill the find process to force an exit status != 0 by finding the parent pid
134 # of the exec's sh process
135 $find_kill_exec = [
136 '-exec', 'sh', '-c',
137 'ps -p $$ -o ppid= | xargs kill -TERM',
138 ';',
139 ]
140
141 $find_chown_base = [
142 $find_cmd_base,
143 '-not', '(', '-user', $nginx::params::user, '-and', '-group', 'adm', ')',
144 ]
145 $find_chown_exec = [
146 '-ls', '-exec', 'chown',
147 "${nginx::params::user}.adm", '{}', ';',
148 ]
149
150 exec {"set_logfiles_owner":
151 command => shellquote($find_chown_base, $find_chown_exec),
152 unless => shellquote($find_chown_base, $find_kill_exec),
153 subscribe => Service['nginx'],
154 }
155
156 $find_chmod_base = [$find_cmd_base, '-not', '-perm', '0640']
157 $find_chmod_exec = ['-ls', '-exec', 'chmod', '0640', '{}', ';']
158
159 exec {"set_logfiles_permissions":
160 command => shellquote($find_chmod_base, $find_chmod_exec),
161 unless => shellquote($find_chmod_base, $find_kill_exec),
162 subscribe => Service['nginx'],
163 }
164
122 service {'nginx': 165 service {'nginx':
123 ensure => running, 166 ensure => running,
124 enable => true, 167 enable => true,
125 restart => '/etc/init.d/nginx reload', 168 restart => '/etc/init.d/nginx reload',
126 hasstatus => true, 169 hasstatus => true,
127 require => File['/etc/nginx/nginx.conf'] 170 require => File['/etc/nginx/nginx.conf']
128 } 171 }
129 } 172 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld