7
7
conf_file = "#{ $mod_dir} /passenger.conf"
8
8
load_file = "#{ $mod_dir} /zpassenger.load"
9
9
10
- case fact ( 'operatingsystem' )
11
- when 'Ubuntu'
12
- case fact ( 'lsbdistrelease' )
13
- when '14.04'
14
- passenger_root = '/usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini'
15
- passenger_default_ruby = '/usr/bin/ruby'
16
- when '16.04'
17
- passenger_root = '/usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini'
18
- passenger_default_ruby = '/usr/bin/ruby'
19
- else
20
- # Includes 10.04 and 12.04
21
- # This may or may not work on Ubuntu releases other than the above
22
- passenger_root = '/usr'
23
- passenger_ruby = '/usr/bin/ruby'
24
- end
25
- when 'Debian'
26
- case fact ( 'operatingsystemmajrelease' )
27
- when '8'
28
- passenger_root = '/usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini'
29
- passenger_default_ruby = '/usr/bin/ruby'
30
- when '9'
31
- passenger_root = '/usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini'
32
- passenger_default_ruby = '/usr/bin/ruby'
33
- else
34
- # Includes wheezy
35
- # This may or may not work on Debian releases other than the above
36
- passenger_root = '/usr'
37
- passenger_ruby = '/usr/bin/ruby'
38
- end
39
- end
10
+ passenger_root = '/usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini'
11
+ passenger_default_ruby = '/usr/bin/ruby'
40
12
41
13
passenger_module_path = '/usr/lib/apache2/modules/mod_passenger.so'
42
14
rackapp_user = 'www-data'
@@ -116,6 +88,11 @@ class { 'apache::mod::passenger':
116
88
end
117
89
end
118
90
context 'default passenger config' do
91
+ # We need to set passenger_instance_registry_dir on every sane distro
92
+ # with systemd. Systemd can force processes into a seperate/private
93
+ # tmpdir. This is the default for apache on Ubuntu 18.04. As a result,
94
+ # passenger CLI tools can't find the config/socket, which defaults to /tmp
95
+ # we enable it for ubuntu 16.04/18.04, centos7 and debian 9
119
96
pp = if [ '7' , '9' , '16.04' , '18.04' ] . include? ( fact ( 'operatingsystemmajrelease' ) )
120
97
<<-MANIFEST
121
98
/* stock apache and mod_passenger */
@@ -150,19 +127,8 @@ class { 'apache::mod::passenger': }
150
127
it { is_expected . to contain %(PassengerRoot "#{ passenger_root } ") }
151
128
case fact ( 'operatingsystem' )
152
129
when 'Ubuntu'
153
- case fact ( 'lsbdistrelease' )
154
- when '14.04'
155
- it { is_expected . to contain %(PassengerDefaultRuby "#{ passenger_default_ruby } ") }
156
- it { is_expected . not_to contain '/PassengerRuby/' }
157
- when '16.04'
158
- it { is_expected . to contain %(PassengerDefaultRuby "#{ passenger_default_ruby } ") }
159
- it { is_expected . not_to contain '/PassengerRuby/' }
160
- else
161
- # Includes 10.04 and 12.04
162
- # This may or may not work on Ubuntu releases other than the above
163
- it { is_expected . to contain %(PassengerRuby "#{ passenger_ruby } ) }
164
- it { is_expected . not_to contain '/PassengerDefaultRuby/' }
165
- end
130
+ it { is_expected . to contain %(PassengerDefaultRuby "#{ passenger_default_ruby } ") }
131
+ it { is_expected . not_to contain '/PassengerRuby/' }
166
132
when 'Debian'
167
133
case fact ( 'operatingsystemmajrelease' )
168
134
when '8'
@@ -188,10 +154,7 @@ class { 'apache::mod::passenger': }
188
154
expected_one = [ %r{Apache processes} , %r{Nginx processes} , %r{Passenger processes} ]
189
155
# passenger-memory-stats output on newer Debian/Ubuntu verions do not contain
190
156
# these two lines
191
- unless ( fact ( 'operatingsystem' ) == 'Ubuntu' && fact ( 'operatingsystemrelease' ) == '14.04' ) ||
192
- ( fact ( 'operatingsystem' ) == 'Ubuntu' && fact ( 'operatingsystemrelease' ) == '16.04' ) ||
193
- ( fact ( 'operatingsystem' ) == 'Debian' && fact ( 'operatingsystemmajrelease' ) == '8' ) ||
194
- ( fact ( 'operatingsystem' ) == 'Debian' && fact ( 'operatingsystemmajrelease' ) == '9' )
157
+ unless fact ( 'osfamily' ) == 'Debian'
195
158
expected_one << [ %r{### Processes: [0-9]+} , %r{### Total private dirty RSS: [0-9\. ]+ MB} ]
196
159
end
197
160
it 'outputs status via passenger-memory-stats #stdout' do
@@ -207,34 +170,27 @@ class { 'apache::mod::passenger': }
207
170
end
208
171
end
209
172
210
- # passenger-status fails under stock ubuntu-server-12042-x64 + mod_passenger,
211
- # even when the passenger process is successfully installed and running
212
- unless fact ( 'operatingsystem' ) == 'Ubuntu' && fact ( 'operatingsystemrelease' ) == '12.04'
213
- it 'outputs status via passenger-status #General information' do
214
- shell ( 'PATH=/usr/bin:$PATH PASSENGER_INSTANCE_REGISTRY_DIR=/var/run /usr/sbin/passenger-status' ) do |r |
215
- # spacing may vary
216
- expect ( r . stdout ) . to match ( %r{[\- ]+ General information [\- ]+} )
217
- end
173
+ it 'outputs status via passenger-status #General information' do
174
+ shell ( 'PATH=/usr/bin:$PATH PASSENGER_INSTANCE_REGISTRY_DIR=/var/run /usr/sbin/passenger-status' ) do |r |
175
+ # spacing may vary
176
+ expect ( r . stdout ) . to match ( %r{[\- ]+ General information [\- ]+} )
218
177
end
219
- expected_two = if ( fact ( 'operatingsystem' ) == 'Ubuntu' && fact ( 'operatingsystemrelease' ) == '14.04' ) ||
220
- ( fact ( 'operatingsystem' ) == 'Ubuntu' && fact ( 'operatingsystemrelease' ) == '16.04' ) ||
221
- ( fact ( 'operatingsystem' ) == 'Debian' && fact ( 'operatingsystemmajrelease' ) == '8' ) ||
222
- ( fact ( 'operatingsystem' ) == 'Debian' && fact ( 'operatingsystemmajrelease' ) == '9' )
223
- [ %r{Max pool size[ ]+: [0-9]+} , %r{Processes[ ]+: [0-9]+} , %r{Requests in top-level queue[ ]+: [0-9]+} ]
224
- else
225
- [ %r{max[ ]+= [0-9]+} , %r{count[ ]+= [0-9]+} , %r{active[ ]+= [0-9]+} , %r{inactive[ ]+= [0-9]+} , %r{Waiting on global queue: [0-9]+} ]
226
- end
227
- it 'outputs status via passenger-status #stdout' do
228
- shell ( 'PATH=/usr/bin:$PATH PASSENGER_INSTANCE_REGISTRY_DIR=/var/run /usr/sbin/passenger-status' ) do |r |
229
- expected_two . each do |expect |
230
- expect ( r . stdout ) . to match ( expect )
231
- end
178
+ end
179
+ expected_two = if fact ( 'osfamily' ) == 'Debian'
180
+ [ %r{Max pool size[ ]+: [0-9]+} , %r{Processes[ ]+: [0-9]+} , %r{Requests in top-level queue[ ]+: [0-9]+} ]
181
+ else
182
+ [ %r{max[ ]+= [0-9]+} , %r{count[ ]+= [0-9]+} , %r{active[ ]+= [0-9]+} , %r{inactive[ ]+= [0-9]+} , %r{Waiting on global queue: [0-9]+} ]
183
+ end
184
+ it 'outputs status via passenger-status #stdout' do
185
+ shell ( 'PATH=/usr/bin:$PATH PASSENGER_INSTANCE_REGISTRY_DIR=/var/run /usr/sbin/passenger-status' ) do |r |
186
+ expected_two . each do |expect |
187
+ expect ( r . stdout ) . to match ( expect )
232
188
end
233
189
end
234
- it 'outputs status via passenger-status #exit_code' do
235
- shell ( 'PATH=/usr/bin:$PATH PASSENGER_INSTANCE_REGISTRY_DIR=/var/run /usr/sbin/ passenger-status' ) do | r |
236
- expect ( r . exit_code ) . to eq ( 0 )
237
- end
190
+ end
191
+ it 'outputs status via passenger-status #exit_code' do
192
+ shell ( 'PATH=/usr/bin:$PATH PASSENGER_INSTANCE_REGISTRY_DIR=/var/run /usr/sbin/passenger-status' ) do | r |
193
+ expect ( r . exit_code ) . to eq ( 0 )
238
194
end
239
195
end
240
196
0 commit comments