Skip to main content

A Buildout recipe to install and configure PyWPS Web Processing Service with Anaconda.

Project description

Introduction

birdhousebuilder.recipe.pywps is a Buildout recipe to install and configure PyWPS with Anaconda. PyWPS is a Python implementation of a Web Processing Service (WPS). PyWPS will be deployed as a Supervisor service and is available on a Nginx web server.

Birdhousebuilder recipes are used to build Web Processing Service components (Phoenix, Malleefowl, Nighthawk, FlyingPigeon, …) of the ClimDaPs project. All Birdhousebuilder recipes need an existing Anaconda installation.

Usage

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

It installs the pywps package from a conda channel and setups a PyWPS output folder in ~/anaconda/var/lib/pywps. It deploys a Supervisor configuration for PyWPS in ~/anaconda/etc/supervisor/conf.d/pywps.conf. Supervisor can be started with ~/anaconda/etc/init.d/supervisor start.

The recipe will install the nginx package from a conda channel and deploy a Nginx site configuration for PyWPS. The configuration will be deployed in ~/anaconda/etc/nginx/conf.d/pywps.conf. Nginx can be started with ~/anaconda/etc/init.d/nginx start.

By default PyWPS will be available on http://localhost:8091/wps?service=WPS&version=1.0.0&request=GetCapabilities.

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

Supported options

The recipe supports the following options:

anaconda-home

Buildout option with the root folder of the Anaconda installation. Default: $HOME/anaconda.

hostname

The hostname of the PyWPS service (nginx). Default: localhost

port

The port of the PyWPS service (nginx). Default: 8091

sites

The name of your WPS project (used for config names and folder path).

processesPath

Path the PyWPS processes.

title

Title used for your WPS service.

abstract

Description of your WPS service.

Example usage

The following example buildout.cfg installs PyWPS with Anaconda:

[buildout]
parts = pywps

anaconda-home = /home/myself/anaconda

[pywps]
recipe = birdhousebuilder.recipe.pywps
sites = myproject
hostname = localhost
port = 8091

# pywps options
processesPath = ${buildout:directory}/myproject/processes
title = MyProject ...
abstract = MyProject does ...

After installing with Buildout start the PyWPS service with:

$ cd /home/myself/anaconda
$ etc/init.d/supervisord start  # start|stop|restart
$ etc/init.d/nginx start        # start|stop|restart
$ bin/supervisorctl status      # check that pycsw is running
$ less var/log/pywps/myproject.log  # check log file

Open your browser with the following URL:

http://localhost:8091/wps?service=WPS&version=1.0.0&request=GetCapabilities

Authors

Carsten Ehbrecht ehbrecht at dkrz.de

Change History

0.1.5 (2014-08-23)

added cache path to nginx configuration.

0.1.4 (2014-08-17)

added /usr/local/bin to gunicorn path (needed for brew on macosx)

0.1.3 (2014-08-01)

Updated documentation.

0.1.2 (2014-07-24)

Fixed hostname in nginx template.

0.1.1 (2014-07-11)

Fixed HOME env in gunicorn template.

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.pywps-0.1.5.tar.gz (8.3 kB view details)

Uploaded Source

File details

Details for the file birdhousebuilder.recipe.pywps-0.1.5.tar.gz.

File metadata

File hashes

Hashes for birdhousebuilder.recipe.pywps-0.1.5.tar.gz
Algorithm Hash digest
SHA256 b64685032386e06f415de77be0eca223c1b6cc26289d683bfdba18bd8e6cfcc5
MD5 840b81f8f451a3656f2d8f77c2e20eb8
BLAKE2b-256 4ce69fedb172807de76fc1617df20e95a261a2a43b7e05cf11a85948105d9d9d

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