Mercurial > hg > MakeItSo
diff makeitso/python_package/INSTALL.py @ 133:cd51ef9288ea
WIP
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Thu, 03 Nov 2011 11:00:01 -0700 |
parents | makeitso/python_package/INSTALL.sh@cc17537254d2 |
children | 702216c49594 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/makeitso/python_package/INSTALL.py Thu Nov 03 11:00:01 2011 -0700 @@ -0,0 +1,52 @@ +#!/usr/bin/env python + +""" +installation script for {{project}} +{{description}} +""" + +import os +import sys +import urllib2 +import subprocess +try: + from subprocess import check_call as call +except: + from subprocess import call + +REPO='{{repo}}' +DEST='{{project}}' # name of the virtualenv +VIRTUALENV='https://raw.github.com/pypa/virtualenv/develop/virtualenv.py' + +def which(binary, path=os.environ['PATH']): + dirs = path.split(os.pathsep) + for dir in dirs: + if os.path.isfile(os.path.join(dir, fileName)): + return os.path.join(dir, fileName) + if os.path.isfile(os.path.join(dir, fileName + ".exe")): + return os.path.join(dir, fileName + ".exe") + +def main(args=sys.argv[1:]): + + # create a virtualenv + virtualenv = which('virtualenv') or which('virtualenv.py') + if virtualenv: + call([virtualenv, DEST]) + else: + process = subproces.Popen([sys.executable, '-', DEST], stdin=subprocess.PIPE) + process.communicate(stdin=urllib2.urlopen(VIRTUALENV).read()) + + # create a src directory + src = os.path.join(DEST, 'src') + os.mkdir(src) + + # clone the repository + call(['hg', 'clone', REPO], cwd=src) + +""" +XXX unfinished + +hg clone ${REPO} +cd {{project}} +python setup.py develop +"""