view examples/hotinstall.py @ 227:8ee4ff7a89c7

one more time
author Jeff Hammel <k0scist@gmail.com>
date Mon, 14 Dec 2015 14:07:06 -0800
parents 388b4bb3516c
children
line wrap: on
line source

# python requirements
# (key, value) = (module, PyPI name)
requirements = [('boto', 'boto'),
                ('tempita', 'tempita')]
for module, package in requirements:
    try:
        globals()[module] = __import__(module)
    except ImportError:
        # install requirement and try again
        import subprocess
        subprocess.check_call(['pip', 'install', package])
        args = [sys.executable] + sys.argv
        os.execl(sys.executable, *args)