From 522d23e2c525ed498977da8fe4916398458fccea Mon Sep 17 00:00:00 2001 From: Sergei Zharinov Date: Tue, 14 Sep 2021 13:13:51 +0300 Subject: [PATCH] fix(gradle): Avoid crash for missing managerData (#11727) --- lib/manager/gradle/shallow/extract.ts | 33 +++++++++++++++------------ 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/lib/manager/gradle/shallow/extract.ts b/lib/manager/gradle/shallow/extract.ts index a89b590bd1cc23..3ed9208a144266 100644 --- a/lib/manager/gradle/shallow/extract.ts +++ b/lib/manager/gradle/shallow/extract.ts @@ -98,20 +98,25 @@ export async function extractAllPackageFiles( } elevateFileReplacePositionField(extractedDeps).forEach((dep) => { - const key = dep.managerData.packageFile; - const pkgFile: PackageFile = packageFilesByName[key]; - const { deps } = pkgFile; - deps.push({ - ...dep, - registryUrls: [ - ...new Set([ - ...defaultRegistryUrls, - ...(dep.registryUrls || []), - ...registryUrls, - ]), - ], - }); - packageFilesByName[key] = pkgFile; + const key = dep.managerData?.packageFile; + // istanbul ignore else + if (key) { + const pkgFile: PackageFile = packageFilesByName[key]; + const { deps } = pkgFile; + deps.push({ + ...dep, + registryUrls: [ + ...new Set([ + ...defaultRegistryUrls, + ...(dep.registryUrls || []), + ...registryUrls, + ]), + ], + }); + packageFilesByName[key] = pkgFile; + } else { + logger.warn({ dep }, `Failed to process Gradle dependency`); + } }); return Object.values(packageFilesByName);