Skip to main content

This product is used to download packages from svn and tar them in a directory.

We need some buildout vars:

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

We need a repository:

>>> create_repository()

Then, the recipe should work:

>>> 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>

Ok, we got it:

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

If a download-cache directory is given, then an archive is created in the specified path:

>>> 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

Ok, now we can work offline. The package will be installed from the cache directory:

>>> 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

Well, it’s ok for a trunk url. But when working with tagged version, we don’t want to use subversion if we already have an archive:

>>> 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)

At the first time, we need to update and built the archive:

>>> 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

Then we work can work offline:

>>> 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

Release files for iw.recipe.subversion 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iw.recipe.subversion 0.3.1
File Size Uploaded
iw.recipe.subversion-0.3.1.tar.gz 14.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iw.recipe.subversion 0.3.1
File Interpreter ABI Platform
iw.recipe.subversion-0.3.1-py2.4.egg Legacy Egg format - - Details

Total release size: 45.9 kB

Release files / iw.recipe.subversion-0.3.1.tar.gz

Download URL iw.recipe.subversion-0.3.1.tar.gz
Size 14.9 kB
Tags Source
SHA-256 checksum
How to use checksums
34c6a7a5e8cd9f1a268152e3fecc89f0f6bf78b522f7ef0022f7999b252e5670
BLAKE2b-256 checksum
How to use checksums
67ddc1a934bb77ad73a0cdd5a3ac543b32967fe7b56e1ea5e33462ce2d25dc23
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / iw.recipe.subversion-0.3.1-py2.4.egg

Download URL iw.recipe.subversion-0.3.1-py2.4.egg
Size 31.1 kB
Tags Egg
SHA-256 checksum
How to use checksums
0665668f306d93721aafc61c1d5c394a79ae53c90e1f3f0452ab861c4f45277c
BLAKE2b-256 checksum
How to use checksums
c4efded70b6e00dc905279e3423788aaf10c77315469c2098bd8f95e3125e6cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page