Skip to content

Puppet module for installing and managing python, pip, virtualenvs and Gunicorn virtual hosts.

License

Notifications You must be signed in to change notification settings

sirech/puppet-python

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Puppet module for installing and managing python, pip, virtualenvs and Gunicorn virtual hosts.

Usage

python

Installs and manages python, python-dev, python-virtualenv and Gunicorn.

version — Python version to install. Default: system default

dev — Install python-dev. Default: false

virtualenv — Install python-virtualenv. Default: false

gunicorn — Install Gunicorn. Default: false

class { 'python':
  version    => 'system',
  dev        => true,
  virtualenv => true,
  gunicorn   => true,
}

python::pip

Installs and manages packages from pip.

ensure — present/absent. Default: present

virtualenv — virtualenv to run pip in.

proxy — Proxy server to use for outbound connections. Default: none

python::pip { 'flask':
  virtualenv => '/var/www/project1',
  proxy      => 'http://proxy.domain.com:3128',
}

python::requirements

Installs and manages Python packages from requirements file.

virtualenv — virtualenv to run pip in. Default: system-wide

proxy — Proxy server to use for outbound connections. Default: none

python::requirements { '/var/www/project1/requirements.txt':
  virtualenv => '/var/www/project1',
  proxy      => 'http://proxy.domain.com:3128',
}

python::virtualenv

Creates Python virtualenv.

ensure — present/absent. Default: present

version — Python version to use. Default: system default

requirements — Path to pip requirements.txt file. Default: none

proxy — Proxy server to use for outbound connections. Default: none

systempkgs — Copy system site-packages into virtualenv. Default: don't

python::virtualenv { '/var/www/project1':
  ensure       => present,
  version      => 'system',
  requirements => '/var/www/project1/requirements.txt',
  proxy        => 'http://proxy.domain.com:3128',
  systempkgs   => true,
}

python::gunicorn

Manages Gunicorn virtual hosts.

ensure — present/absent. Default: present

virtualenv — Run in virtualenv, specify directory. Default: disabled

mode — Gunicorn mode. wsgi/django. Default: wsgi

dir — Application directory.

bind — Bind on: 'HOST', 'HOST:PORT', 'unix:PATH'. Default: unix:/tmp/gunicorn-$name.socket or unix:${virtualenv}/${name}.socket

environment — Set ENVIRONMENT variable. Default: none

template — Which ERB template to use. Default: python/gunicorn.erb

python::gunicorn { 'vhost':
  ensure      => present,
  virtualenv  => '/var/www/project1',
  mode        => 'wsgi',
  dir         => '/var/www/project1/current',
  bind        => 'unix:/tmp/gunicorn.socket',
  environment => 'prod',
  template    => 'python/gunicorn.erb',
}

Authors

Sergey Stankevich Ashley Penney Marc Fournier

About

Puppet module for installing and managing python, pip, virtualenvs and Gunicorn virtual hosts.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Puppet 96.8%
  • Ruby 3.2%