in etl/glean.py [0:0]
def get_dependencies(self):
# Get all of the library dependencies for the application that
# are also known about in the repositories file.
# The dependencies are specified using dependency names, but we need to
# map those back to the name of the repository in the repository file.
try:
dependencies = _cache.get_json(
self.DEPENDENCIES_URL_TEMPLATE.format(self.app["v1_name"])
)
except requests.HTTPError:
logging.info(f"For {self.app_id}, using default Glean dependencies")
return self.DEFAULT_DEPENDENCIES
dependency_library_names = list(dependencies.keys())
libraries_by_dependency_name = {}
for library in self.get_libraries():
libraries_by_dependency_name[library["dependency_name"]] = library
dependencies = []
for name in dependency_library_names:
if name in libraries_by_dependency_name:
dependencies.append(libraries_by_dependency_name[name])
if len(dependencies) == 0:
logging.info(f"For {self.app_id}, using default Glean dependencies")
return self.DEFAULT_DEPENDENCIES
logging.info(f"For {self.app_id}, found Glean dependencies: {dependencies}")
return dependencies