Skip to content

Commit d39e983

Browse files
author
Jeff Parker
committed
allow private indexes to be part of requirements.txt
1 parent 089cb43 commit d39e983

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

aws_lambda/aws_lambda.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -401,16 +401,24 @@ def _install_packages(path, packages):
401401
:param list packages:
402402
A list of packages to be installed via pip.
403403
"""
404-
bad_packages = ['-i', '#', 'Python==', 'python-lambda']
404+
bad_packages = ['#', 'Python==', 'python-lambda']
405405
blacklist = re.compile('|'.join([re.escape(pack) for pack in bad_packages]))
406406
filtered_packages = [pack for pack in packages if not blacklist.search(pack)]
407+
indexes = ['-i', '--index-url', '--extra-index-url']
407408

409+
extra_args = []
408410
for package in filtered_packages:
409411
if package.startswith('-e '):
410412
package = package.replace('-e ', '')
413+
if any(i in package for i in indexes):
414+
extra_args.append(package)
415+
continue
411416

412417
print('Installing {package}'.format(package=package))
413-
subprocess.check_call([sys.executable, '-m', 'pip', 'install', package, '-t', path, '--ignore-installed'])
418+
call = [sys.executable, '-m', 'pip', 'install', package, '-t', path, '--ignore-installed']
419+
if extra_args:
420+
call.extend(extra_args)
421+
subprocess.check_call(call)
414422

415423

416424
def pip_install_to_target(path, requirements=None, local_package=None):

0 commit comments

Comments
 (0)