summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Danjou <julien@danjou.info>2013-07-24 22:47:07 +0200
committerJulien Danjou <julien@danjou.info>2013-07-30 10:19:59 +0200
commit6545e2b6d33dc57f0810ea19c40ff7a3d2bcf677 (patch)
tree99741250a553a97a54748dfca7683e6f929baa5f
parent1273cbdd7c75d768901435e9228f1b745a7f681c (diff)
downloadpbr-6545e2b6d33dc57f0810ea19c40ff7a3d2bcf677.tar.gz
Use the same logic everywhere for requirements files
Currently, the environment variable isn't always respected, especially when dealing with the egg_info command. Let's factorize the code into a function and use it everywhere instead of the REQUIREMENTS_FILES variable. Change-Id: I1c3224ef76ee724c8176eb00ef948d80259e3c17
-rw-r--r--pbr/packaging.py19
1 files changed, 12 insertions, 7 deletions
diff --git a/pbr/packaging.py b/pbr/packaging.py
index 8afbde7..25d374d 100644
--- a/pbr/packaging.py
+++ b/pbr/packaging.py
@@ -49,6 +49,13 @@ TEST_REQUIREMENTS_FILES = ('test-requirements.txt', 'tools/test-requires')
BROKEN_ON_27 = ('argparse', 'importlib')
+def get_requirements_files():
+ files = os.environ.get("PBR_REQUIREMENTS_FILES")
+ if files:
+ return tuple(f.strip() for f in files.split(','))
+ return REQUIREMENTS_FILES
+
+
def append_text_list(config, key, text_list):
"""Append a \n separated list to possibly existing value."""
new_value = []
@@ -141,11 +148,7 @@ def get_reqs_from_files(requirements_files):
def parse_requirements(requirements_files=None):
if requirements_files is None:
- files = os.environ.get("PBR_REQUIREMENTS_FILES")
- if files:
- requirements_files = tuple(f.strip() for f in files.split(','))
- else:
- requirements_files = REQUIREMENTS_FILES
+ requirements_files = get_requirements_files()
def egg_fragment(match):
# take a versioned egg fragment and return a
@@ -188,7 +191,9 @@ def parse_requirements(requirements_files=None):
return requirements
-def parse_dependency_links(requirements_files=REQUIREMENTS_FILES):
+def parse_dependency_links(requirements_files=None):
+ if requirements_files is None:
+ requirements_files = get_requirements_files()
dependency_links = []
# dependency_links inject alternate locations to find packages listed
# in requirements
@@ -348,7 +353,7 @@ class LocalInstall(install.install):
def _newer_requires_files(egg_info_dir):
"""Check to see if any of the requires files are newer than egg-info."""
- for target, sources in (('requires.txt', REQUIREMENTS_FILES),
+ for target, sources in (('requires.txt', get_requirements_files()),
('test-requires.txt', TEST_REQUIREMENTS_FILES)):
target_path = os.path.join(egg_info_dir, target)
for src in _any_existing(sources):