Metadata-Version: 1.0
Name: iw.recipe.fss
Version: 0.1cdev-r6553
Summary: Recipe to configure File System Storage
Home-page: http://ingeniweb.svn.sourceforge.net/viewvc/ingeniweb/iw.recipe.fss
Author: Ingeniweb
Author-email: support@ingeniweb.com
License: GPL
Description: =====================
        iw.recipe.fss package
        =====================
        
        .. contents::
        
        What is iw.recipe.fss ?
        =======================
        
        This recipe configure FSS Storage.
        
        
        How to use iw.recipe.fss ?
        ==========================
        
        The recipe is called by buildout, let's create an instance of it, with
        a buildout simulated context::
        
        >>> import os
        >>> data_dir = os.path.join(test_dir, 'data')
        >>> bin_dir = os.path.join(data_dir, 'bin')
        >>> var_dir = os.path.join(data_dir, 'var2')
        >>> conf_dir = os.path.join(data_dir, 'etc')
        >>> buildout = {'instance': {'location': data_dir},
        ...		    'buildout': {'bin-directory': bin_dir}}
        >>> name = 'fss'
        >>> options = {'conf': os.path.join(conf_dir,
        ...			                'plone-filesystemstorage.conf'),
        ...		   'storages': """
        ...			storage1 /site/storage1
        ...			storage2 /site/storage2 flat
        ...			storage3 /site/storage3 flat %s/storage %s/backup
        ...			""" % (var_dir, var_dir)}
        
        Creating the recipe::
        
        >>> from iw.recipe.fss import Recipe
        >>> recipe = Recipe(buildout, name, options)
        
        Running it::
        
        >>> paths = list(recipe.install())
        
        Checking files created::
        
        >>> paths.sort()
        >>> paths
        ['...data/etc/plone-filesystemstorage.conf',
        '...data/var/fss_backup_storage1',
        '...data/var/fss_backup_storage2',
        '...data/var/fss_storage_storage1',
        '...data/var/fss_storage_storage2',
        '...data/var2/backup',
        '...data/var2/storage']
        
        Checking the conf file::
        
        >>> conf = open(os.path.join(conf_dir,
        ...			         'plone-filesystemstorage.conf'))
        >>> print conf.read()
        # FSS conf file generated by iw.recipe.fss
        <BLANKLINE>
        # main storage storage1 for /site/storage1
        storage-path /.../data/var/fss_storage_storage1
        backup-path /.../data/var/fss_backup_storage1
        storage-strategy directory
        <BLANKLINE>
        # storage storage2
        <site /site/storage2>
        storage-path /.../data/var/fss_storage_storage2
        backup-path /.../data/var/fss_backup_storage2
        storage-strategy flat
        </site>
        <BLANKLINE>
        # storage storage3
        <site /site/storage3>
        storage-path /.../data/var2/storage
        backup-path /.../data/var2/backup
        storage-strategy flat
        </site>
        <BLANKLINE>
        <BLANKLINE>
        
        Cleaning up the files::
        
        >>> for path in paths:
        ...	    try:
        ...	        os.rmdir(path)
        ...     except:
        ...         os.remove(path)
        
        
        
        
Keywords: recipe zope plone fss
Platform: UNKNOWN
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
