Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mod_passenger is installed with yum #28

Closed
Ginja opened this issue Mar 11, 2014 · 4 comments
Closed

mod_passenger is installed with yum #28

Ginja opened this issue Mar 11, 2014 · 4 comments

Comments

@Ginja
Copy link

Ginja commented Mar 11, 2014

First off, great module!

However, I ran into a big of a snag when following the instructions on your Puppet module page to install & configure passenger. This is what I declared in my manifest:

  class { 'apache': }
  class { 'rvm::passenger::apache':
      version            => '4.0.37',
      ruby_version       => 'ruby-2.0.0-p451',
      mininstances       => '3',
      maxinstancesperapp => '0',
      maxpoolsize        => '30',
      spawnmethod        => 'smart-lv2',
  }

And below is a snippet of what got executed. The bothersome portion being that mod_passenger is being installed via yum, which conflicts with what we're trying to accomplish. I don't think this is expected behaviour as you end up with multiple passenger*.conf files, which are using different versions of Ruby and passenger.

Notice: /Stage[main]/Rvm::Passenger::Apache/Exec[passenger-install-apache2-module]/returns: executed successfully
Debug: /Stage[main]/Rvm::Passenger::Apache/Exec[passenger-install-apache2-module]: The container Class[Rvm::Passenger::Apache] will propagate my refresh event
Info: /Stage[main]/Rvm::Passenger::Apache/Exec[passenger-install-apache2-module]: Scheduling refresh of Class[Apache::Mod::Passenger]
Debug: Class[Rvm::Passenger::Apache]: The container Stage[main] will propagate my refresh event
Info: Class[Apache::Mod::Passenger]: Scheduling refresh of Apache::Mod[passenger]
Notice: /Stage[main]/Apache::Mod::Passenger/File[passenger.conf]/ensure: defined content as '{md5}d01efdf35bf619084012f899918b6572'
Info: /Stage[main]/Apache::Mod::Passenger/File[passenger.conf]: Scheduling refresh of Service[httpd]
Debug: /Stage[main]/Apache::Mod::Passenger/File[passenger.conf]: The container Class[Apache::Mod::Passenger] will propagate my refresh event
Debug: Executing '/bin/rpm -q mod_passenger --nosignature --nodigest --qf %{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH}\n'
Debug: Package[mod_passenger](provider=yum): Ensuring => present
Debug: Executing '/usr/bin/yum -d 0 -e 0 -y install mod_passenger'
Debug: Executing '/bin/rpm -q mod_passenger --nosignature --nodigest --qf %{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH}\n'
Notice: /Stage[main]/Apache::Mod::Passenger/Apache::Mod[passenger]/Package[mod_passenger]/ensure: created
Debug: /Stage[main]/Apache::Mod::Passenger/Apache::Mod[passenger]/Package[mod_passenger]: The container Apache::Mod[passenger] will propagate my refresh event

I tracked where this package resource was being declared, and it appears to come from the puppetlabs-apache module. Specifically from within the manifests/mod/passenger.pp file:

  if $::osfamily == 'FreeBSD' {
    ::apache::mod { 'passenger':
      lib_path => "${passenger_root}/buildout/apache2"
    }
  } else {
    # Problem line here
    ::apache::mod { 'passenger': }
  }

::apache::mod is a define type that automatically installs the mod_passenger package (original file: manifests/mod.pp). I know there's not much you can do about this, as it's not your module's fault, but I thought I would make the issue aware for other people trying to use your module to deploy passenger.

@Ginja
Copy link
Author

Ginja commented Mar 11, 2014

On further investigation, this may not be that big of an issue. However, do you know which version of Passenger an app will use if two different passenger versions are told to load if mod_passenger.c is loaded? I know in Passenger 4+ you can specify multiple versions of Ruby, but I can't find anything about multiple Passenger versions. Do you happen to know?

@carlossg
Copy link
Member

sorry but I don't use the mod_passenger part

@Ginja
Copy link
Author

Ginja commented Apr 10, 2014

I'm going to close this issue. I worked around it in my module by installing & configuring Passenger myself.

@Ginja Ginja closed this as completed Apr 10, 2014
@steeef
Copy link

steeef commented Sep 4, 2014

Just ran into this myself. I was able to get past it by making sure the package was absent:

package { 'mod_passenger': ensure => absent }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants