diff --git a/trains_agent/helper/package/external_req.py b/trains_agent/helper/package/external_req.py index 7ca695c..0fad400 100644 --- a/trains_agent/helper/package/external_req.py +++ b/trains_agent/helper/package/external_req.py @@ -90,10 +90,17 @@ class ExternalRequirements(SimpleSubstitution): return Text('') def replace_back(self, list_of_requirements): - if 'pip' in list_of_requirements: - original_requirements = list_of_requirements['pip'] - list_of_requirements['pip'] = [r for r in original_requirements - if r not in self.post_install_req_lookup] - list_of_requirements['pip'] += [self.post_install_req_lookup.get(r, '') - for r in self.post_install_req_lookup.keys() if r in original_requirements] + if not list_of_requirements: + return list_of_requirements + + for k in list_of_requirements: + # k is either pip/conda + if k not in ('pip', 'conda'): + continue + + original_requirements = list_of_requirements[k] + list_of_requirements[k] = [r for r in original_requirements + if r not in self.post_install_req_lookup] + list_of_requirements[k] += [self.post_install_req_lookup.get(r, '') + for r in self.post_install_req_lookup.keys() if r in original_requirements] return list_of_requirements diff --git a/trains_agent/helper/package/translator.py b/trains_agent/helper/package/translator.py index 12f3c4e..c1ebe4b 100644 --- a/trains_agent/helper/package/translator.py +++ b/trains_agent/helper/package/translator.py @@ -67,8 +67,15 @@ class RequirementsTranslator(object): return downloaded def replace_back(self, requirements): - if 'pip' in requirements: - original_requirements = requirements['pip'] + if not requirements: + return requirements + + for k in requirements: + # k is either pip/conda + if k not in ('pip', 'conda'): + continue + + original_requirements = requirements[k] new_requirements = [] for line in original_requirements: local_file = [d for d in self._translate_back.keys() if d in line] @@ -78,6 +85,6 @@ class RequirementsTranslator(object): else: new_requirements.append(line) - requirements['pip'] = new_requirements + requirements[k] = new_requirements return requirements