Metadata-Version: 1.1
Name: birdhousebuilder.recipe.nginx
Version: 0.1.2
Summary: A Buildout recipe to install and configure Nginx with Anaconda.
Home-page: http://www.dkrz.de
Author: Carsten Ehbrecht
Author-email: ehbrecht@dkrz.de
License: BSD
Description: *****************************
        birdhousebuilder.recipe.nginx
        *****************************
        
        .. contents::
        
        Introduction
        ************
        
        ``birdhousebuilder.recipe.nginx`` is a `Buildout`_ recipe to install `Nginx`_ from an `Anaconda`_ channel and to deploy a site configuration for your application.
        
        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.  
        
        .. _`Buildout`: http://buildout.org/
        .. _`Anaconda`: http://continuum.io/
        .. _`Nginx`: http://nginx.org/
        .. _`Mako`: http://www.makotemplates.org
        
        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``.
        
        The recipe will install the ``nginx`` package from a conda channel and deploy a Nginx site configuration for your application. The configuration will be deployed in ``~/anaconda/etc/nginx/conf.d/myapp.conf``. Nginx can be started with ``~/anaconda/etc/init.d/nginx 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``.
        
        ``input``
           The path to a `Mako`_ template with a Nginx configuration for your application.
        
        ``sites``
           The name of your application.
        
        All additional options can be used as parameters in your Nginx site configuration. The ``anaconda-home`` Path is available as ``prefix`` parameter.
        
        
        Example usage
        =============
        
        The following example ``buildout.cfg`` installs Nginx with a site configuration for ``myapp``::
        
          [buildout]
          parts = myapp_nginx
        
          anaconda-home = /home/myself/anaconda
        
          [myapp_nginx]
          recipe = birdhousebuilder.recipe.nginx
          input = ${buildout:directory}/templates/myapp_nginx.conf
          sites = myapp
        
          hostname =  localhost
          port = 8081
        
        An example Mako template for your Nginx configuration could look like this::
        
          upstream myapp {
            server unix:///tmp/myapp.socket fail_timeout=0;
          }
        
          server {
            listen ${port};
            server_name ${hostname};
        
            root ${prefix}/var/www;      
            index index.html index.htm;
        
            location / {
              # checks for static file, if not found proxy to app
              try_files $uri @proxy_to_phoenix;
            }
        
            location @proxy_to_phoenix {
                proxy_pass http://myapp;
            }
          }
        
        
        
        
        Authors
        *******
        
        Carsten Ehbrecht ehbrecht@dkrz.de
        
        Changes
        *******
        
        0.1.2 (2014-08-01)
        ==================
        
        * Updated documentation.
        
        0.1.1 (2014-07-24)
        ==================
        
        * Added start-stop script for nginx.
        * Generates self-signed certificate for https.
        
        0.1.0 (2014-07-10)
        ==================
        
        Initial Release.
        
Keywords: buildout recipe
Platform: UNKNOWN
Classifier: Framework :: Buildout
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: License :: OSI Approved :: BSD License
