I'm running into a similar problem; however, even the changes to
config.ru don't seem to make a difference. First, here are the GEMs I have installed:
daemon_controller (1.0.0)
facter (1.6.13)
fastthread (1.0.7)
ffi (1.1.5)
hiera (1.1.0, 1.0.0)
json (1.7.5)
libvirt-ruby (1.0.2)
passenger (3.0.17)
puppet (3.0.1)
puppet-lint (0.3.1)
puppet-module (0.3.4)
rack (1.4.1)
rack-protection (1.2.0)
rake (0.9.2.2)
rubygems-update (1.8.24)
sinatra (1.3.3)
stomp (1.2.6)
tilt (1.3.3)
tzinfo (0.3.33)
I built a staging system to test out Puppet 3.0.1 and Passenger, latest versions. I have another similar system, running Puppet 2.x with Passenger which is working fine.
Here is my
config.ru (hash comments removed for brevity):
$0 = "master"
ARGV << "--rack"
ARGV << "--confdir" << "/etc/puppet"
require 'puppet/util/command_line'
run Puppet::Util::CommandLine.new.execute
The file is owned by puppet:puppet as is the Rack directory, which is /etc/puppet/rack/puppetmasterd/public
My /etc/httpd/conf.d/passenger.conf is simple enough:
LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.17/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.17
PassengerRuby /usr/local/bin/ruby
Listen 8140
<VirtualHost *:8140>
SSLEngine On
# SSLCipherSuite SSLv2:-LOW:-EXPORT:RC4+RSA
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
SSLCertificateFile /var/lib/puppet/ssl/certs/stage1.myserver.com.pem
SSLCertificateKeyFile /var/lib/puppet/ssl/private_keys/stage1.myserver.com.pem
SSLCertificateChainFile /var/lib/puppet/ssl/ca/ca_crt.pem
SSLCACertificateFile /var/lib/puppet/ssl/ca/ca_crt.pem
SSLCARevocationFile /var/lib/puppet/ssl/ca/ca_crl.pem
SSLVerifyClient optional
SSLVerifyDepth 1
SSLOptions +StdEnvVars
# The following client headers allow the same configuration to work with Pound.
RequestHeader set X-SSL-Subject %{SSL_CLIENT_S_DN}e
RequestHeader set X-Client-DN %{SSL_CLIENT_S_DN}e
RequestHeader set X-Client-Verify %{SSL_CLIENT_VERIFY}e
PassengerHighPerformance on
PassengerMaxPoolSize 15
PassengerPoolIdleTime 300
PassengerUseGlobalQueue on
PassengerStatThrottleRate 120
RackAutoDetect On
RailsAutoDetect Off
RackBaseURI /
DocumentRoot /etc/puppet/rack/puppetmasterd/public
<Directory "/etc/puppet/rack/puppetmasterd/public">
Options None
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
I've tried this with the AutoDetect of Rails and Rack on|off. What I see is httpd starts up fine, along with the Passenger processes, but there is no puppet.
I can run puppet by itself with no trouble, however.
I've been poring over this since yesterday and I honestly can't figure out what's wrong. Unless it has to do with GEM versions that are not working correctly?
Before I put this out into production, I want to be sure the steps to get this working are clearly documented in case it breaks, etc.
Thanks.