Skip to main content

A Buildout recipe to install and configure Postgres database with Anaconda.

Project description

Introduction

birdhousebuilder.recipe.postgres is a Buildout recipe to install and configure Postgres database with Anaconda. Postgres will be deployed as a Supervisor service.

The recipe is based on https://github.com/makinacorpus/makina.recipe.postgres.

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.

It installs the postgresql 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 for Postgres in ~/.conda/envs/birdhouse/etc/supervisor/conf.d/postgres.conf. Supervisor can be started with ~/.conda/envs/birdhouse/etc/init.d/supervisor start.

The Postgres database files are by default in ~/.conda/envs/birdhouse/var/lib/postgres.

The recipe depends on birdhousebuilder.recipe.conda and birdhousebuilder.recipe.supervisor.

Supported options

The 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

port

Port used for Postgres. Default: 5433.

pgdata

path to the database files. Default: ~/.conda/envs/birdhouse/var/lib/postgres

initdb

Options for Postgres initialisation. Default: --auth=trust

cmds

psql commands to setup your database schema and users.

Example usage

The following example buildout.cfg installs Postgres with Anaconda:

[buildout]
parts = postgres

anaconda-home = /home/myself/anaconda

[postgres]
recipe = birdhousebuilder.recipe.postgres
port = 5433
cmds =
     createuser -p 5433 --createdb --no-createrole --no-superuser --login demo
     createdb -p 5433 --owner=demo demo

After installing with Buildout start the Postgres service with:

$ cd /home/myself/.conda/envs/birdhouse
$ etc/init.d/supervisord start  # start|stop|restart
$ bin/supervisorctl status      # check that postgres is running

Authors

Carsten Ehbrecht ehbrecht at dkrz.de

Change History

0.2.0 (2015-03-31)

  • using postgresql from anaconda

  • refactored postgres setup

  • using subprocess instead of os.system

0.1.0 (2015-03-30)

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.postgres-0.2.0.tar.gz (12.8 kB view details)

Uploaded Source

File details

Details for the file birdhousebuilder.recipe.postgres-0.2.0.tar.gz.

File metadata

File hashes

Hashes for birdhousebuilder.recipe.postgres-0.2.0.tar.gz
Algorithm Hash digest
SHA256 9d9b45558eb784ab1a71d49e243bfb50bf10b0f144c89e6c0b48a4476f8d3db7
MD5 c359171c59ae02d337d50bd19a6cb12e
BLAKE2b-256 add717feff055124aff02bab25245bc4ac28eb619919a49ad4aeaf93f8e1a2a2

See more details on using hashes here.

Supported by

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