Skip to main content

A Buildout recipe to install and configure supervisor for Anaconda.

Project description

Introduction

birdhousebuilder.recipe.supervisor is a Buildout recipe to configure Supervisor services with Anaconda. This recipe is used by the Birdhouse project.

Usage

The recipe requires that Anaconda is already installed. It assumes that the default Anaconda location is in your home directory ~/anaconda. Otherwise you need to set the ANACONDA_HOME environment variable or the Buildout option anaconda-home.

The recipe will install the supervisor package from a conda channel in a conda environment named birdhouse. The location of the birdhouse environment is .conda/envs/birdhouse. It deploys a supervisor configuration of a given service. The configuration will be deployed in the birdhouse enviroment ~/.conda/envs/birdhouse/etc/supervisor/conf.d/myapp.conf. Supervisor can be started with ~/.conda/envs/birdhouse/etc/init.d/supervisord start.

The recipe depends on birdhousebuilder.recipe.conda.

Supported options

This recipe supports the following options:

anaconda-home

Buildout option with the root folder of the Anaconda installation. Default: $HOME/anaconda. The default location can also be set with the environment variable ANACONDA_HOME. Example:

export ANACONDA_HOME=/opt/anaconda

Search priority is:

  1. anaconda-home in buildout.cfg

  2. $ANACONDA_HOME

  3. $HOME/anaconda

Buildout options for supervisord:

supervisor-port

Buildout option to set the supervisor port. Default is 9001.

supervisor-host

Buildout option to set supervisor host. Default is 127.0.0.1.

supervisor-username

Buildout option to set username for http monitor access. Default: None

supervisor-password

Buildout option to set password for http monitor access. Default: None

supervisor-use-monitor

Buildout option wheather to enable http monitor interface. Default: true

supervisor-loglevel

Buildout option for supervisor log level. Default: info

Buildout part options for the program section:

program

The name of the supervisor service.

command

The command to start the service.

directory

The directory where the command is started.

priority

The priority to start service (optional). Default is 999.

autostart

Start service automatically (optional). Default is true.

autorestart

Restart service automatically (optional). Default is false.

stdout_logfile

logfile for stdout (optional). Default is ~/.conda/envs/birdhouse/var/log/supervisor/${program}.log

stderr_logfile

logfile for stderr (optional). Default is ~/.conda/envs/birdhouse/var/log/supervisor/${program}.log

startsecs

Seconds the service needs to be online before marked as started (optional). Default is 1.

stopwaitsecs

Seconds to wait before killing service (optional). Default 10.

killasgroup

Kill also child processes (optional). Default false.

For supervisor configuration details see the documentation.

Example usage

The following example buildout.cfg installs a Supervisor configuration for myapp web application:

[buildout]
parts = myapp

anaconda-home = /opt/anaconda
supervisor-host = 127.0.0.1
supervisor-port = 9001
supervisor-use-monitor = true

[myapp]
recipe = birdhousebuilder.recipe.supervisor
program = myapp
command = ${buildout:bin-directory}/gunicorn -b unix:///tmp/myapp.socket myapp:app
directory = /tmp

Authors

Carsten Ehbrecht ehbrecht at dkrz.de

Changes

0.2.8 (2015-12-22)

  • fixed use-monitor option.

0.2.7 (2015-12-22)

  • cleaned up configuration files.

  • added more supervisord options: host, port, username, password, use_monitor.

0.2.6 (2015-12-07)

  • remove supervisor config files after uninstall.

0.2.5 (2015-09-21)

  • added DAEMON_OPTS env variable to set additional parameters when starting supervisord.

0.2.4 (2015-07-15)

  • added stopsignal option.

  • fixed stopasgroup option.

0.2.2 (2015-06-25)

  • cleaned up templates.

  • added user and chown option.

0.2.1 (2015-05-18)

  • added more options for program configuration.

  • setting default logfile name for service.

0.2.0 (2015-02-24)

  • installing in conda enviroment birdhouse.

  • using $ANACONDA_HOME environment variable.

  • separation of anaconda-home and installation prefix.

0.1.5 (2015-01-22)

  • bugfix: var/log/supervisor directory is now created.

0.1.4 (2014-12-06)

  • Don’t update conda on buildout update.

0.1.3 (2014-07-31)

  • Updated documentation.

0.1.2 (2014-07-24)

  • Removed workaround “kill nginx”.

0.1.1 (2014-07-22)

  • Not using supervisor-host option.

0.1.0 (2014-07-10)

  • Initial Release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

birdhousebuilder.recipe.supervisor-0.2.8.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file birdhousebuilder.recipe.supervisor-0.2.8.tar.gz.

File metadata

File hashes

Hashes for birdhousebuilder.recipe.supervisor-0.2.8.tar.gz
Algorithm Hash digest
SHA256 80e792044aaf09c69ee5ed102f0f6bcaa878baeb77fff269c627e9181d735732
MD5 ddd325b6c8a049c4f15fa82d89a475b0
BLAKE2b-256 9e6be1630074f4316b74bc91ed8a37b6298df2f00459b450fc38734ed8a4c700

See more details on using hashes here.

File details

Details for the file birdhousebuilder.recipe.supervisor-0.2.8-py2-none-any.whl.

File metadata

File hashes

Hashes for birdhousebuilder.recipe.supervisor-0.2.8-py2-none-any.whl
Algorithm Hash digest
SHA256 3402c37834795453c01aafeda1322c9cb9b666bf5fcff7ec440ff1636e4f1b60
MD5 b264690615321140022a070952a6cbd4
BLAKE2b-256 bab45ff8dfffb3304c5c5ede844e6a2eda8c0837e60a71a0d280511366eb516c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page