Metadata-Version: 1.0
Name: minitage.recipe.fetch
Version: 1.42
Summary: zc.buildout recipes to compile and install software or python packages and generate scripts or configuration files.
Home-page: http://cheeseshop.python.org/pypi/minitage.recipe.fetch
Author: Mathieu Pasquet
Author-email: kiorky@cryptelium.net
License: BSD
Description: ******************************************************************************
        Recipe for compiling and installing software with or without minitage
        ******************************************************************************
        
        .. contents::
        
        =======================
        Introduction
        =======================
        
        
        The egg has those entry point:
        
        - *fetch*:
        recipe for fetching something, somewhere, with git, http, frp, static, hg, svn or bzr.
        
        You can browse the code on minitage's following resources:
        
        - http://git.minitage.org/git/minitage/eggs/minitage.recipe.fetch/
        - http://www.minitage.org/trac/browser/minitage/eggs/minitage.recipe.fetch
        
        You can migrate your buldouts without any effort with buildout.minitagificator:
        
        * http://pypi.python.org/pypi/buildout.minitagificator
        
        
        
        
        ===============================================
        minitage.recipe.fetch
        ===============================================
        
        
        Abstract
        -----------------
        - This recipe can be used to fetch something from somewhere to some location of your local fileystem
        This something can be either an url or a set of urls.
        - Thus by:
        
        * git
        * svn
        * ftp, http, file:// (urllib)
        * bazaar
        * mercurial
        
        Specific options
        -----------------
        Please look for options at : http://pypi.python.org/pypi/minitage.recipe.common#options-shared-by-all-the-recipes
        
        * urls
        See the shared options for more information on how to set them.
        * For the static fetcher, you can precise md5sum in the 'revision' field.
        * set unpack to automaticly unpack a downloaded archive, like::
        
        [foo]
        unpack=True
        
        Detailled documentation
        -------------------------
        The divide url function test::
        
        - If you dont precise the directory, its the basename of the url::
        
        >>> divide_url ('http://foo/bar|svn|666||--ignore-externals')
        ('http://foo/bar', 'svn', '666', 'http.foo.bar', '--ignore-externals')
        
        - Static as a default::
        
        >>> divide_url ('')
        ('', 'static', '', '', '')
        
        - arguements can be optionnal::
        
        >>> divide_url ('http://foo/bar')
        ('http://foo/bar', 'static', '', 'http.foo.bar', '')
        
        
        Let's create a buildout configuration file::
        
        >>> rmdir(tempdir)
        >>> mkdir(tempdir)
        >>> cd(tempdir)
        >>> a = [mkdir(d) for d in ('eggs', 'develop-eggs', 'bin', 'src')]
        >>> install_develop_eggs(['minitage.recipe.fetch'])
        >>> install_eggs_from_pathes(['zc.buildout'], sys.path)
        >>> touch('buildout.cfg')
        >>> sh('buildout -o bootstrap')
        buildout -o bootstrap...
        
        
        Initializing test env.
        
        >>> if not os.path.exists('foo'):
        ...     mkdir('foo')
        ... else:
        ...     rmdir(foo)
        ...     mkdir('foo')
        >>> touch('foo/configure', data ="""echo configure $@\n""")
        >>> sh('chmod +x foo/configure')
        c...
        >>> touch('foo/Makefile',
        ... data = """
        ... all:
        ... \t@echo all
        ...
        ... install:
        ... \t@echo install
        ...
        ... """)
        >>> sh('tar cfz  foo.tgz foo')
        tar cfz  ...
        <BLANKLINE>
        
        
        Downloading some urls, files, git checkouts with one in a particular checkout directory and a particular revision::
        
        >>> data = """
        ... [buildout]
        ... download-cache=${buildout:directory}
        ... parts =
        ...     part
        ... [part]
        ... recipe=minitage.recipe.fetch
        ... urls =file://${buildout:directory}/foo.tgz
        ...        http://git.minitage.org/git/minitage/eggs/minitage.core|git
        ...        http://git.minitage.org/git/minitage/eggs/minitage.recipe|git|e1f30b9d7a89572fa87fe26f8e353304532a281c|minitage.recipe.alt
        ... """
        >>> touch('buildout.cfg', data=data)
        >>> sh('bin/buildout install part')
        bin/buildout install part
        Unused options for buildout: 'download-directory'.
        Installing part.
        minitage.recipe: Start checkouts
        minitage.recipe: Completed dowbload of file:///tmp/buildout.test/foo.tgz in /tmp/buildout.test/parts/part/
        minitage.fetchers.scm: Checkouted /tmp/buildout.test/parts/part/minitage.recipe.alt / http://git.minitage.org/git/minitage/eggs/minitage.recipe (e1f30b9d7a89572fa87fe26f8e353304532a281c) [git].
        minitage.recipe: Completed dowbload of http://git.minitage.org/git/minitage/eggs/minitage.recipe in /tmp/buildout.test/parts/part/minitage.recipe.alt
        minitage.fetchers.scm: Checkouted /tmp/buildout.test/parts/part/http.git.minitage.org.git.minitage.eggs.minitage.core / http://git.minitage.org/git/minitage/eggs/minitage.core (HEAD) [git].
        minitage.recipe: Completed dowbload of http://git.minitage.org/git/minitage/eggs/minitage.core in /tmp/buildout.test/parts/part/http.git.minitage.org.git.minitage.eggs.minitage.core
        minitage.recipe: Finnished checkouts
        <BLANKLINE>
        <BLANKLINE>
        
        
        
        =======================
        CHANGELOG
        =======================
        
        UP
        -----
        
        - fix bug on static fetching, (one upon another, content is removed)
        
        1.38
        ------
        
        - fix develop link
        
        1.37
        -----
        
        - fix api
        
        1.36
        -------
        
        - forgot to version one file
        
        1.35
        ------
        
        - splitted out from minitage.recipe
        
        
        
Keywords: development buildout recipe
Platform: UNKNOWN
Classifier: Framework :: Buildout
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Topic :: Software Development :: Build Tools
Classifier: Topic :: Software Development :: Libraries :: Python Modules
