Skip to content
This repository has been archived by the owner before Nov 9, 2022. It is now read-only.


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time



The Passenger module allows easy configuration and management of Phusion Passenger.

Module Description

The Passenger module lets you run Rails or Rack inside Apache with ease. Utilizing Passenger, an application server for Ruby (Rack) and Python (WSGI) apps, the Passenger module enables quick configuration of Passenger for Apache.


What Passenger affects:

  • Apache
  • installs packages on chosen nodes
  • package/service/configuration files for Passenger

Beginning with Passenger

Install and begin managing Passenger on a node by declaring the class in your node definition:

node default {
  class {'passenger': }

This will establish Passenger on your node with sane default values. However, you can manually set the parameter values:

node default {
  class {'passenger':
    passenger_version      => '2.2.11',
    passenger_provider     => 'gem',
    passenger_package      => 'passenger',
    gem_path               => '/var/lib/gems/1.8/gems',
    gem_binary_path        => '/var/lib/gems/1.8/bin',
    passenger_root         => '/var/lib/gems/1.8/gems/passenger-2.2.11'
    mod_passenger_location => '/var/lib/gems/1.8/gems/passenger-2.2.11/ext/apache2/',
    include_build_tools    => true,


The passenger class has a set of configurable parameters that allow you to control aspects of Passenger's installation.

Parameters within passenger


Path to Rubygems binaries on your system


The path to rubygems on your system


Boolean to require gcc and make classes. Default is false.


Path to Passenger's file


Ensure the state of the passenger package


Provider to use to install passenger


The name of the Passenger package


The package provider to use for the system


Root directory for passenger


Allows you to customize what ruby binary is used


The Version of Passenger to be installed


Whether or not to include the passenger::compile class. Defaults to true.


This module operates by compiling Ruby gems on the system being managed.


This module was developed and tested against RHEL and Debian based systems (Centos, Fedora, Redhat, Debian, Ubuntu). This module may require you to specify default parameter values to accommodate other distributions.


Puppet Labs modules on the Puppet Forge are open projects, and community contributions are essential for keeping them great. We can’t access the huge number of platforms and myriad of hardware, software, and deployment configurations that Puppet is intended to serve.

We want to keep it as easy as possible to contribute changes so that our modules work in your environment. There are a few guidelines that we need contributors to follow so that we can have a chance of keeping on top of things.

You can read the complete module contribution guide on the Puppet Labs wiki.

Release Notes

0.0.4 Release

  • Remove puppetlabs-gcc dependency
  • Add package dependencies for Passenger 3.0
  • Re-order resources (removing chaining syntax)


Puppet Labs Module for Passenger




Code of conduct

Security policy





No packages published