Metadata-Version: 1.0
Name: isotoma.recipe.varnish
Version: 0.1.9
Summary: Set up varnish and varnish logging
Home-page: UNKNOWN
Author: Doug Winter
Author-email: doug.winter@isotoma.com
License: Apache Software License
Description: Varnish buildout recipe
        =======================
        
        This package provides buildout_ recipes for the configuration of varnish.  This
        has a number of features and differences from `plone.recipe.varnish`_, but it
        was inspired by that package.
        
        This package also doesn't provide all the features of plone.recipe.varnish,
        since it's designed to be used slightly differently.  Using this recipe you
        have one varnish daemon per deployed backend application server.  If you have
        three different applications on a server, you will run three varnish daemons.
        This means they can be separately deployed, configured and maintained.  This
        also means there is no need for host-header based routing.
        
        Note that this package provides no support for *installing* varnish.  Use the
        binary provided by your OS, or use `zc.recipe.cmmi`_ perhaps.
        
        The key differences are:
        
        1. This packages uses `isotoma.recipe.gocaptain`_ to write the start/stop scripts, so it's more likely to play well with your OS and behaves more normally
        2. Support for a separate logging system with each varnish instance, again using GoCaptain
        3. A different (and arguably more sane) basic varnish configuration
        4. Easy support for custom templates
        
        .. _buildout: http://pypi.python.org/pypi/zc.buildout
        .. _`plone.recipe.varnish`: http://pypi.python.org/pypi/plone.recipe.varnish
        .. _`isotoma.recipe.gocaptain`: http://pypi.python.org/pypi/isotoma.recipe.gocaptain
        .. _`zc.recipe.cmmi`: http://pypi.python.org/pypi/zc.recipe.cmmi
        
        Configuration example
        ---------------------
        
        A recipe for this package would look something like::
        
        [varnish]
        recipe = isotoma.recipe.varnish
        name = mysite
        bind = 127.0.0.1:8080
        backends = 127.0.0.1:9000
        varnishlog = /usr/bin/varnishncsa
        logfile = /var/log/varnish/mysite.log
        
        This would create two start scripts in your bin directory: varnish and
        varnishlog.  The log instance will only log activity for this varnish instance.
        
        Mandatory Parameters
        --------------------
        
        bind
        The host:port to listen on
        backends
        A list of backends (note only one backend is currently supported with the default template, because some director code is required.  A custom template should work ok though, if you write one.)
        
        Optional Parameters
        -------------------
        
        name
        This identifies the individual varnish instance - see the -n option to varnishd. (required if you are using varnishlog and recommended even if not)
        cache-size
        The size of the cache.
        connect-timeout
        The .connect_timeout option in the output VCL
        first-byte-timeout
        The .first_byte_timeout option in the output VCL
        between-bytes-timeout
        The .between_bytes_timeout in the output VCL
        daemon
        The path to the varnishd daemon (default /usr/sbin/varnishd)
        parameters
        Any other parameters to pass at runtime (without the -p)
        user
        The user to run the daemon as (default nobody)
        group
        The group to run the daemon as (default nobody)
        verbose-headers
        If you set this, you will get some very useful debugging headers in your HTTP output.
        template
        The path to the template to use, if you wish to provide a different one. It's expected that this will be a Varnish 2.1 template.
        If you try to use Varnish 2.0, isotoma.recipe.varnish will attempt to downgrade the template.
        log-include-regex
        Include lines matching the specified regex in the log output
        log-exclude-regex
        Exclude lines matching the specified regex from the log output
        log-include-tag
        Include lines with the specified tag in the log output
        log-exclude-tag
        Exclude lines with the specified tag from the log output
        logfile
        The path to the logfile to write (required if varnishlog specified)
        varnishlog
        The path to the varnishlog binary - you can use either varnishlog or varnishncsa
        telnet
        Offer a management interface on the specified address and port. (format: address:port)
        Will generate a varnishadm wrapper in bin dir with the -T address:port already provided
        cachehtml
        By default HTML is explicitly excluded from being cached, to avoid various
        broken configurations we've seen. If you really want to cache HTML pages, set
        this to 'on'
        
        License
        -------
        
        Copyright 2010 Isotoma Limited
        
        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.
        
        
        Changelog
        =========
        
        0.1.9 (2012-02-03)
        ------------------
        
        - Change handling of ``${buildout:run-directory}}`` so can cope with migrating
        from deployments not using it.
        
        
        0.1.8 (2012-02-01)
        ------------------
        
        - Add a new varnishctl wrapper that allows for graceful reload of varnish
        configuration.
        
        To test a new VCL change without interrupting your site you can::
        
        varnishctl configtest
        
        To load a new VCL change without disrupting your site you can::
        
        varnishctl graceful
        
        
        0.1.7 (2012-01-23)
        ------------------
        
        - Add option to enable passthru headers
        
        
        0.1.6 (2012-01-23)
        ------------------
        
        - Fix bug in previous change
        
        
        0.1.5 (2012-01-23)
        ------------------
        
        - enabled switching of html caching with the 'cachehtml' option
        
        
        0.1.4 (2012-01-09)
        ------------------
        
        - Provide a vcl_hash that doesn't use the Host header
        
        
        0.1.3 (2011-09-01)
        ------------------
        
        - Working varnishadm command
        
        
        0.1.2 (2011-08-26)
        ------------------
        
        - Use ${:daemon} rather than assuming varnishd is on PATH.
        - If there is a ${buildout:run-directory}, put pid files there
        
        
Keywords: varnish proxy cache buildout
Platform: UNKNOWN
Classifier: Framework :: Buildout
Classifier: Intended Audience :: System Administrators
Classifier: Operating System :: POSIX
Classifier: License :: OSI Approved :: Apache Software License
