diff --git a/lib/modules/manager/kubernetes/extract.spec.ts b/lib/modules/manager/kubernetes/extract.spec.ts index 0f6744daac5e840ad20199e850473626ad673258..678031fd0b83feb3360e69867c003851959f0716 100644 --- a/lib/modules/manager/kubernetes/extract.spec.ts +++ b/lib/modules/manager/kubernetes/extract.spec.ts @@ -9,11 +9,11 @@ const otherYamlFile = Fixtures.get('gitlab-ci.yaml'); describe('modules/manager/kubernetes/extract', () => { describe('extractPackageFile()', () => { it('returns null for empty', () => { - expect(extractPackageFile('')).toBeNull(); + expect(extractPackageFile('', 'file.yaml')).toBeNull(); }); it('returns only API version', () => { - const res = extractPackageFile(kubernetesConfigMapFile); + const res = extractPackageFile(kubernetesConfigMapFile, 'file.yaml'); expect(res?.deps).toStrictEqual([ { currentValue: 'v1', @@ -23,7 +23,7 @@ describe('modules/manager/kubernetes/extract', () => { }); it('extracts multiple Kubernetes configurations', () => { - const res = extractPackageFile(kubernetesImagesFile); + const res = extractPackageFile(kubernetesImagesFile, 'file.yaml'); expect(res?.deps).toStrictEqual([ { autoReplaceStringTemplate: @@ -55,7 +55,7 @@ describe('modules/manager/kubernetes/extract', () => { }); it('extracts image line in a YAML array', () => { - const res = extractPackageFile(kubernetesArraySyntaxFile); + const res = extractPackageFile(kubernetesArraySyntaxFile, 'file.yaml'); expect(res?.deps).toStrictEqual([ { autoReplaceStringTemplate: @@ -75,7 +75,7 @@ describe('modules/manager/kubernetes/extract', () => { }); it('ignores non-Kubernetes YAML files', () => { - expect(extractPackageFile(otherYamlFile)).toBeNull(); + expect(extractPackageFile(otherYamlFile, 'file.yaml')).toBeNull(); }); it('handles invalid YAML files', () => { @@ -83,7 +83,7 @@ describe('modules/manager/kubernetes/extract', () => { kind: ConfigMap < `; - expect(extractPackageFile(invalidYaml)).toBeNull(); + expect(extractPackageFile(invalidYaml, 'file.yaml')).toBeNull(); }); }); }); diff --git a/lib/modules/manager/kubernetes/extract.ts b/lib/modules/manager/kubernetes/extract.ts index 5bae891c57fb7aa5578aea715ee080d230e922a9..c16c42141c52f25c596a0e146aa3bcfb937194bb 100644 --- a/lib/modules/manager/kubernetes/extract.ts +++ b/lib/modules/manager/kubernetes/extract.ts @@ -6,7 +6,10 @@ import { getDep } from '../dockerfile/extract'; import type { PackageDependency, PackageFile } from '../types'; import type { KubernetesConfiguration } from './types'; -export function extractPackageFile(content: string): PackageFile | null { +export function extractPackageFile( + content: string, + fileName: string +): PackageFile | null { logger.trace('kubernetes.extractPackageFile()'); const isKubernetesManifest = @@ -18,7 +21,7 @@ export function extractPackageFile(content: string): PackageFile | null { const deps: PackageDependency[] = [ ...extractImages(content), - ...extractApis(content), + ...extractApis(content, fileName), ]; return deps.length ? { deps } : null; @@ -47,13 +50,13 @@ function extractImages(content: string): PackageDependency[] { return deps.filter((dep) => !dep.currentValue?.includes('${')); } -function extractApis(content: string): PackageDependency[] { +function extractApis(content: string, fileName: string): PackageDependency[] { let doc: KubernetesConfiguration[] | undefined; try { doc = loadAll(content) as KubernetesConfiguration[]; } catch (err) { - logger.debug({ err, content }, 'Failed to parse Kubernetes configuration.'); + logger.debug({ err, fileName }, 'Failed to parse Kubernetes manifest.'); return []; }