2012-12-18 06:35:09 +01:00
""" shared options and groups """
from optparse import make_option , OptionGroup
def make_option_group ( group , parser ) :
"""
Return an OptionGroup object
group - - assumed to be dict with ' name ' and ' options ' keys
parser - - an optparse Parser
"""
option_group = OptionGroup ( parser , group [ ' name ' ] )
for option in group [ ' options ' ] :
option_group . add_option ( option )
return option_group
###########
# options #
###########
index_url = make_option (
' -i ' , ' --index-url ' , ' --pypi-url ' ,
dest = ' index_url ' ,
metavar = ' URL ' ,
default = ' http://pypi.python.org/simple/ ' ,
2013-01-18 22:25:15 +01:00
help = ' Base URL of Python Package Index (default %d efault). ' )
2012-12-18 06:35:09 +01:00
extra_index_url = make_option (
' --extra-index-url ' ,
dest = ' extra_index_urls ' ,
metavar = ' URL ' ,
action = ' append ' ,
default = [ ] ,
2013-01-18 22:25:15 +01:00
help = ' Extra URLs of package indexes to use in addition to --index-url. ' )
2012-12-18 06:35:09 +01:00
no_index = make_option (
' --no-index ' ,
dest = ' no_index ' ,
action = ' store_true ' ,
default = False ,
2013-01-18 22:25:15 +01:00
help = ' Ignore package index (only looking at --find-links URLs instead). ' )
find_links = make_option (
' -f ' , ' --find-links ' ,
dest = ' find_links ' ,
action = ' append ' ,
default = [ ] ,
metavar = ' url ' ,
help = " If a url or path to an html file, then parse for links to archives. If a local path or file:// url that ' s a directory, then look for archives in the directory listing. " )
2012-12-18 06:35:09 +01:00
use_mirrors = make_option (
' -M ' , ' --use-mirrors ' ,
dest = ' use_mirrors ' ,
action = ' store_true ' ,
default = False ,
help = ' Use the PyPI mirrors as a fallback in case the main index is down. ' )
mirrors = make_option (
' --mirrors ' ,
dest = ' mirrors ' ,
metavar = ' URL ' ,
action = ' append ' ,
default = [ ] ,
2013-01-18 22:25:15 +01:00
help = ' Specific mirror URLs to query when --use-mirrors is used. ' )
2012-12-18 06:35:09 +01:00
##########
# groups #
##########
index_group = {
' name ' : ' Package Index Options ' ,
' options ' : [
index_url ,
extra_index_url ,
no_index ,
2013-01-18 22:25:15 +01:00
find_links ,
2012-12-18 06:35:09 +01:00
use_mirrors ,
mirrors
]
}