Commit 932ea7cc authored by Jason R. Coombs's avatar Jason R. Coombs

Extract argument parsing as a separate function

--HG--
branch : distribute
extra : rebase_source : d2143d4dd1332558689b6b90770c013bce3a7e37
parent 7796c535
......@@ -20,6 +20,7 @@ import fnmatch
import tempfile
import tarfile
import optparse
from distutils import log
try:
......@@ -496,19 +497,22 @@ def _extractall(self, path=".", members=None):
self._dbg(1, "tarfile: %s" % e)
def _build_install_args(user_install):
def _build_install_args(options):
"""
Build the arguments to 'python setup.py install' on the distribute package
"""
install_args = []
if user_install:
if options.user_install:
if sys.version_info < (2, 6):
log.warn("--user requires Python 2.6 or later")
raise SystemExit(1)
else:
install_args.append('--user')
install_args.append('--user')
return install_args
def main(version=DEFAULT_VERSION):
"""Install or upgrade setuptools and EasyInstall"""
def _parse_args():
"""
Parse the command line for options
"""
parser = optparse.OptionParser()
parser.add_option(
'--user', dest='user_install', action='store_true', default=False,
......@@ -518,9 +522,14 @@ def main(version=DEFAULT_VERSION):
default=DEFAULT_URL,
help='alternative URL from where to download the distribute package')
options, args = parser.parse_args()
tarball = download_setuptools(download_base=options.download_base)
_install(tarball, _build_install_args(options.user_install))
# positional arguments are ignored
return options
def main(version=DEFAULT_VERSION):
"""Install or upgrade setuptools and EasyInstall"""
options = _parse_args()
tarball = download_setuptools(download_base=options.download_base)
_install(tarball, _build_install_args(options))
if __name__ == '__main__':
main()
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment