UNPKG

renovate

Version:

Automated dependency updates. Flexible so you don't need to be.

42 lines (41 loc) 1.42 kB
import { coerceString } from "../../../util/string.js"; import { logger } from "../../../logger/index.js"; import { parseUrl } from "../../../util/url.js"; import { coerceArray } from "../../../util/array.js"; import upath from "upath"; //#region lib/modules/manager/jsonnet-bundler/extract.ts function extractPackageFile(content, packageFile) { logger.trace({ packageFile }, "jsonnet-bundler.extractPackageFile()"); if (packageFile.includes("vendor/")) return null; const deps = []; let jsonnetFile; try { jsonnetFile = JSON.parse(content); } catch { logger.debug({ packageFile }, `Invalid JSON`); return null; } for (const dependency of coerceArray(jsonnetFile.dependencies)) { const dep = extractDependency(dependency); if (dep) deps.push(dep); } if (!deps.length) return null; return { deps }; } function extractDependency(dependency) { if (!dependency.source.git) return null; const gitRemote = parseUrl(dependency.source.git.remote); if (!gitRemote) { logger.debug({ dependency }, "Invalid Git remote URL"); return null; } return { depName: upath.join(gitRemote.host, gitRemote.pathname.replace(/\.git$/, ""), coerceString(dependency.source.git.subdir)), packageName: dependency.source.git.remote, currentValue: dependency.version, managerData: { subdir: dependency.source.git.subdir } }; } //#endregion export { extractPackageFile }; //# sourceMappingURL=extract.js.map