skip to navigation
skip to content

minitage.recipe.fetch 1.43

zc.buildout recipes to compile and install software or python packages and generate scripts or configuration files sponsored by Makina Corpus.

Downloads ↓

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:

You can migrate your buldouts without any effort with 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)
  • fix invalid crossdevice link errors

1.38

  • fix develop link

1.37

  • fix api

1.36

  • forgot to version one file

1.35

  • splitted out from minitage.recipe
 
File Type Py Version Uploaded on Size # downloads
minitage.recipe.fetch-1.43.zip (md5) Source 2010-02-12 17KB 1820