Adoptable Cookbooks List

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

gunicorn Cookbook

Installs and configures the latest version of Gunicorn (via pip), aka Green Unicorn, a Python WSGI HTTP Server for UNIX. It's a pre-fork worker model ported from Ruby's Unicorn project. Includes an LWRP for managing Gunicorn config files. By default Gunicorn is installed system-wide but you can target a particular virtualenv by overriding the node["gunicorn"]["virtualenv"] attribute.

Requirements

Platforms

Debian/Ubuntu

RHEL/CentOS/Scientific/Amazon/Oracle

Chef

Chef 12.1+

Cookbooks

python

Attributes

node["gunicorn"]["virtualenv"] - the virtualenv you want to target Gunicorn installation into. The virtualenv will be created if it doesn't exist.

Resource/Provider

This cookbook includes LWRPs for managing gunicorn config files.

gunicorn_config

Creates a Gunicorn configuration file at the path specified. Meant to be deployed with a service init scheme/supervisor such as runit. Please see the appliation::gunicorn recipe for a complete working example. In depth information about Gunicorn's configuration values can be found in the Gunicorn documentation.

Actions

:create: create a Gunicorn configuration file.

:delete: delete an existing Gunicorn configuration file.

Attribute Parameters

path: name attribute. The path where the configuration file will be created

template: template to use when rendering the configuration file. default is gunicorn.py.erb (part of this cookbook)

cookbook: cookbook to look for template file in. default is this cookbook gunicorn

listen: the socket to bind to. A string of the form: 'HOST', 'HOST:PORT', 'unix:PATH'. default is 0.0.0.0:8000 or listen on port 8000 on all interfaces

backlog: The maximum number of pending connections. default is 2048

preload_app: Whether application code should be loaded before the worker processes are forked. default is false

worker_processes: The number of worker process for handling requests. default is 4

worker_class: The type of workers to use. default is sync

worker_timeout: The number of seconds to wait before a worker is killed and restarted. default is 60

worker_keepalive: The number of seconds to wait for requests on a Keep-Alive connection. default is 2

worker_max_requests: The maximum number of requests a worker will process before restarting. default is 0 or restarts disabled

server_hooks: A hash with whose values will be rendered as a Gunicorn server hook callables (functions) named after the hash item's key name. default is {} or no serves hooks

owner: The owner for the configuration file.

group: The group owner of the configuration file (string or id).

pid: A filename to use for the PID file. default is no pidfile

accesslog: The access log file to write to.

access_log_format: The access log format.

errorlog: The error log file to write to.

loglevel: The granularity of error log outputs.

logger_class: The logger you want to use to log events in gunicorn.

logconfig: The log config file to use.

secure_scheme_headers: A hash containing headers and values that the front-end proxy uses to indicate HTTPS requests.

forwarded_allow_ips: Front-end's IPs from which allowed to handle set secure headers. (comma separate).

Usage

License & Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

v1.1.0

v1.0.0

Current/initial release

Collaborator Number Metric

2.0.0 passed this metric

Contributing File Metric

2.0.0 passed this metric

Foodcritic Metric

2.0.0 failed this metric

FC074: LWRP should use DSL to define resource's default action: gunicorn/resources/config.rb:1FC074: LWRP should use DSL to define resource's default action: gunicorn/resources/install.rb:1Run with Foodcritic Version 12.2.1 with tags metadata,correctness ~FC031 ~FC045 and failure tags any