zatosource / zato

ESB, SOA, REST, APIs and Cloud Integrations in Python
https://zato.io
GNU Affero General Public License v3.0
1.1k stars 239 forks source link

Add a PyPI mirror #51

Closed dsuch closed 11 years ago

dsuch commented 11 years ago

PyPI is on a CDN now but it still is possible it will have hiccups so we need our own PyPI mirror hosting all the packages Zato needs.

myroslav commented 11 years ago

As an alternative to full PyPI mirror, it is possible to tar buildout altogether with download cache. By adding download-cache = downloads line to [buildout] section of buildout.cfg you'll have all prerequisites downloaded in downloads subfolder of buildout.

If you tar the downloads with all other buildout files (and update install.sh not to remove it), the Zato distribution should not need PyPI. Buildout has -o option that makes it work "offline".

For zato 1.1 the size of downloads dir is 37Mb. It is much more then 0.5Mb of zato, but should be simpler then setup and maintenance of PiPI mirror. If you want to still keep zato and dependencies separate, you can host contents of "downloads" folder and download it as single archive at the beginning of install.sh script.

dsuch commented 11 years ago

Thanks for the suggestion @myroslav - downloading all the dependencies in install.sh is what I'll be working on right now.

PyPI is great and has a CDN but still some packages are hosted elsewhere. So even though PyPI is up, the dependencies may not be available.

dsuch commented 11 years ago

Well, the -o (offline) option is not what one one would call an offline install. I'm using buildout 2.1.0 and I get

""" Error: install-from-cache can't be used with offline mode. Nothing is installed, even fromn cache, in offline mode, which might better be called 'no-install mode'. """

I don't know what this option is for but let's skip it.

I'm trying to use download-cache/install-from-cache and don't have luck either. While the dependencies are downloaded to ./dependencies (all sort of .tar.gz there), install-from-cache = true doesn't pull them at all and says none of it can be found.

Well, I'm still fighting with it.

dsuch commented 11 years ago

OK, since 053f17bef373d31664f853a8a4b63b88fecb7e99 everything is pinned and a find-links now contains a reference to http://extlibs.zato.io/dependencies/ - bundling dependencies will be added in another ticket, not now.

myroslav commented 11 years ago

The -o option worked well in Buildout 1.x, the Buildout 2.x probably has changes over semantics as there were some architectural issues in Buildout 1.x. I'll post update when I know more about download-cache in Buildout 2.x

On Sat, Jun 22, 2013 at 4:52 PM, Dariusz Suchojad notifications@github.comwrote:

OK, since 053f17bhttps://github.com/zatosource/zato/commit/053f17bef373d31664f853a8a4b63b88fecb7e99everything is pinned and a find-links now contains a reference to http://extlibs.zato.io/dependencies/ - bundling dependencies will be added in another ticket, not now.

— Reply to this email directly or view it on GitHubhttps://github.com/zatosource/zato/issues/51#issuecomment-19857145 .

.................................................................................................................................... Myroslav Opyr ▪ CTO ▪ Quintagroup ▪ +1.917.475.4725 ▪ http://quintagroup.com ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙