At 05:27 PM 3/5/2009 +0000, Fadhley Salim wrote:
In an automated build environment I need to be able to make eggs which
depend on non-released "testing" eggs. These are all published to a
web-server operated by my team.

I know that it's possible to globally change the default URLs of the
"--find-links" easy_install option by editing the distutils.cfg file,
however I want a fully automated process which will validate a system's
configuration and determine if the test-egg URL have been added to the
system. If not, I want my build process to fail with an explicit error
emssage.

Other than by directly inspecting and parsing this file, is there a
programatic way to find which hosts have been configured in the
distutils.cfg file? Ideally I'd like to access this information via
pkg_resources.

It's not available there. You would need to create an easy_install command instance and inspect its find_links attribute. Something like:

  ei = makeSetup().get_command_obj('easy_install')
  ei.ensure_finalized()
  print ei.find_links

See the 'makeSetup()' function in setuptools/tests/__init__.py for how to do the equivalent.

(Now, if what you're really asking is, can you tell whether a specific version of an egg is available on sys.path, you can certainly do that by checking pkg_resources.require('projectname')[0].version to see if it's the version you want.)

_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to