跳转到主要内容

ZC buildout recipe 用于从SVN仓库检出目录并将其存档到文件夹中

项目描述

本产品用于从SVN下载软件包,并将其打包存档到目录中。

我们需要一些buildout变量

>>> write('buildout.cfg',
... """
... [buildout]
... parts=svn-package
...
... [svn-package]
... recipe=iw.recipe.subversion
... urls=
...   file:///%s/my_package/trunk my_package
... """ % repository)

我们需要一个仓库

>>> create_repository()

然后,这个配方应该可以工作

>>> print system(buildout)
Installing svn-package.
A    /sample-buildout/parts/svn-package/my_package/__init__.py
A    /sample-buildout/parts/svn-package/my_package/sub
A    /sample-buildout/parts/svn-package/my_package/sub/__init__.py
A    /sample-buildout/parts/svn-package/my_package/README.txt
...
<BLANKLINE>

好的,我们明白了

>>> ls('parts', 'svn-package')
d my_package

如果提供了下载缓存目录,则将在指定路径创建存档

>>> write('buildout.cfg',
... """
... [buildout]
... download-cache=cache
... parts=svn-package
...
... [svn-package]
... recipe=iw.recipe.subversion
... urls=
...   file:///%s/my_package/trunk my_package
... """ % repository)

>>> rmtree('parts')
>>> cache = join(os.getcwd(), 'cache')
>>> mkdir(cache)

>>> print system(buildout)
Creating directory '/sample-buildout/parts'.
Uninstalling svn-package.
Installing svn-package.
A    /sample-buildout/parts/svn-package/my_package/__init__.py
A    /sample-buildout/parts/svn-package/my_package/sub
A    /sample-buildout/parts/svn-package/my_package/sub/__init__.py
A    /sample-buildout/parts/svn-package/my_package/README.txt
...
Creating archive: my_package-dev.tar.gz

>>> ls(cache)
d  dist
-  my_package-dev.tar.gz

好的,现在我们可以离线工作了。软件包将从缓存目录安装

>>> write('buildout.cfg',
... """
... [buildout]
... install-from-cache=true
... download-cache=cache
... parts=svn-package
...
... [svn-package]
... recipe=iw.recipe.subversion
... urls=
...   file:///%s/my_package/trunk my_package
... """ % repository)

>>> rmtree(repository)
>>> rmtree('parts')
>>> print system(buildout)
Creating directory '/sample-buildout/parts'.
Uninstalling svn-package.
Installing svn-package.
<BLANKLINE>


>>> ls('parts', 'svn-package')
d  my_package

>>> ls('parts', 'svn-package', 'my_package')
-  README.txt
-  __init__.py
d  sub

对于trunk URL来说,这很好。但是,当与标记版本一起工作时,如果我们已经有了存档,我们不想使用SVN

>>> write('buildout.cfg',
... """
... [buildout]
... download-cache=cache
... parts=svn-package
...
... [svn-package]
... recipe=iw.recipe.subversion
... urls=
...   file:///%s/my_package/tags/v1_0_0 my_package
... """ % repository)

第一次,我们需要更新和构建存档

>>> create_repository()
>>> print system(buildout)
Uninstalling svn-package.
Installing svn-package.
A    /sample-buildout/parts/svn-package/my_package/__init__.py
A    /sample-buildout/parts/svn-package/my_package/sub
A    /sample-buildout/parts/svn-package/my_package/sub/__init__.py
A    /sample-buildout/parts/svn-package/my_package/README.txt
...
Creating archive: my_package-v1_0_0.tar.gz
<BLANKLINE>

>>> ls('parts', 'svn-package', 'my_package')
d  .svn
-  README.txt
-  __init__.py
d  sub

>>> ls(cache)
d  dist
-  my_package-v1_0_0.tar.gz

然后我们可以离线工作

>>> write('buildout.cfg',
... """
... [buildout]
... offline=true
... download-cache=cache
... parts=svn-package
...
... [svn-package]
... recipe=iw.recipe.subversion
... urls=
...   file:///%s/my_package/tags/v1_0_0 my_package
... """ % repository)

>>> rmtree(repository)
>>> rmtree('parts')
>>> print system(buildout)
Creating directory '/sample-buildout/parts'.
Uninstalling svn-package.
Installing svn-package.
<BLANKLINE>

>>> ls('parts', 'svn-package', 'my_package')
-  README.txt
-  __init__.py
d  sub

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

iw.recipe.subversion-0.3.1.tar.gz (14.9 kB 查看哈希值)

上传时间 源代码

构建分发

iw.recipe.subversion-0.3.1-py2.4.egg (31.1 kB 查看哈希值)

上传时间 源代码

支持