Skip to content

Commit 3247558

Browse files
committed
add pid & socket as options. Make pid & log_file optional. Don't create service files when not managed. Apps don't force reload of emperor as the emperor auto reloads the vassals.
1 parent 9181001 commit 3247558

3 files changed

Lines changed: 49 additions & 43 deletions

File tree

manifests/app.pp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@
4444
group => $gid,
4545
mode => '0644',
4646
content => template($template),
47-
require => Package[$::uwsgi::package_name],
48-
notify => Service[$::uwsgi::service_name]
47+
require => Package[$::uwsgi::package_name]
4948
}
5049
}

manifests/init.pp

Lines changed: 44 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,8 @@
9898
$install_python_dev = $uwsgi::params::install_python_dev,
9999
$python_pip = $uwsgi::params::python_pip,
100100
$python_dev = $uwsgi::params::python_dev,
101+
$pidfile = $uwsgi::params::pidfile,
102+
$socket = $uwsgi::params::socket,
101103
$emperor_options = undef
102104
) inherits uwsgi::params {
103105

@@ -136,44 +138,49 @@
136138
require => Package[$package_name]
137139
}
138140

139-
if $service_file == undef {
140-
$service_file_real = $service_provider ? {
141-
redhat => '/etc/init.d/uwsgi',
142-
upstart => '/etc/init/uwsgi.conf',
143-
default => '/etc/init/uwsgi.conf',
144-
}
145-
} else {
146-
$service_file_real = $service_file
147-
}
141+
if $manage_service_file == true {
142+
if $service_file == undef {
143+
$service_file_real = $service_provider ? {
144+
redhat => '/etc/init.d/uwsgi',
145+
upstart => '/etc/init/uwsgi.conf',
146+
default => '/etc/init/uwsgi.conf',
147+
}
148+
} else {
149+
$service_file_real = $service_file
150+
}
148151

149-
if $service_file_mode == undef {
150-
$service_file_mode_real = $service_provider ? {
151-
redhat => '0555',
152-
upstart => '0644',
153-
default => '0644',
154-
}
155-
} else {
156-
$service_file_mode_real = $service_file_mode
157-
}
152+
if $service_file_mode == undef {
153+
$service_file_mode_real = $service_provider ? {
154+
redhat => '0555',
155+
upstart => '0644',
156+
default => '0644',
157+
}
158+
} else {
159+
$service_file_mode_real = $service_file_mode
160+
}
158161

159-
if $service_template == undef {
160-
$service_template_real = $service_provider ? {
161-
redhat => 'uwsgi/uwsgi_service-redhat.erb',
162-
upstart => 'uwsgi/uwsgi_upstart.conf.erb',
163-
default => 'uwsgi/uwsgi_upstart.conf.erb',
164-
}
165-
} else {
166-
$service_template_real = $service_template
167-
}
162+
if $service_template == undef {
163+
$service_template_real = $service_provider ? {
164+
redhat => 'uwsgi/uwsgi_service-redhat.erb',
165+
upstart => 'uwsgi/uwsgi_upstart.conf.erb',
166+
default => 'uwsgi/uwsgi_upstart.conf.erb',
167+
}
168+
} else {
169+
$service_template_real = $service_template
170+
}
168171

169-
file { $service_file_real:
170-
ensure => $file_ensure,
171-
owner => 'root',
172-
group => 'root',
173-
mode => $service_file_mode_real,
174-
replace => $manage_service_file,
175-
content => template($service_template_real),
176-
require => Package[$package_name]
172+
file { $service_file_real:
173+
ensure => $file_ensure,
174+
owner => 'root',
175+
group => 'root',
176+
mode => $service_file_mode_real,
177+
replace => $manage_service_file,
178+
content => template($service_template_real),
179+
require => Package[$package_name]
180+
}
181+
$required_files = [ $config_file, $service_file_real ]
182+
} else {
183+
$required_files = $config_file
177184
}
178185

179186
file { $app_directory:
@@ -192,13 +199,9 @@
192199
provider => $service_provider,
193200
require => [
194201
Package[$package_name],
195-
File[$config_file],
196-
File[$service_file_real]
202+
File[$required_files]
197203
],
198-
subscribe => [
199-
File[$config_file],
200-
File[$service_file_real]
201-
]
204+
subscribe => File[$required_files]
202205
}
203206

204207
# finally, configure any applications necessary

templates/uwsgi.ini.erb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,18 @@
44
# uWSGI main process configuration
55
#
66
[uwsgi]
7+
<% if @socket -%>
78
socket = <%= @socket %>
9+
<% end -%>
810
pidfile = <%= @pidfile %>
911
emperor = <%= @app_directory %>
1012
emperor-tyrant = true
1113
master = true
1214
autoload = true
1315
log-date = true
16+
<% if @log_file -%>
1417
logto = <%= @log_file %>
18+
<% end -%>
1519
<%
1620
if @emperor_options
1721
@emperor_options.sort.each do |key, value|

0 commit comments

Comments
 (0)