Mercurial > hg > FileServer
view INSTALL.py @ 17:27bd18f0a359
fix up security hole
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Wed, 29 Feb 2012 16:01:38 -0800 |
parents | 8d31e36f084e |
children | c6e459be8534 |
line wrap: on
line source
#!/usr/bin/env python """ installation script for FileServer a simple static fileserver and directory index server in python (WSGI app) """ import os import sys import urllib2 import subprocess try: from subprocess import check_call as call except: from subprocess import call REPO='http://k0s.org/hg/FileServer' DEST='FileServer' # 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 FileServer python setup.py develop """