diff --git a/lib/modules/manager/pip_requirements/extract.spec.ts b/lib/modules/manager/pip_requirements/extract.spec.ts index 84eface817b47f..76932dce197188 100644 --- a/lib/modules/manager/pip_requirements/extract.spec.ts +++ b/lib/modules/manager/pip_requirements/extract.spec.ts @@ -239,5 +239,43 @@ some-package==0.3.1`; ], }); }); + + it('extracts a file with only --index-url flags', () => { + const res = extractPackageFile('--index-url https://example.com/pypi'); + expect(res).toMatchObject({ + deps: [], + registryUrls: ['https://example.com/pypi'], + }); + }); + + it('extracts a file with only --extra-index-url flags', () => { + const res = extractPackageFile( + '--extra-index-url https://example.com/pypi', + ); + expect(res).toMatchObject({ + deps: [], + additionalRegistryUrls: ['https://example.com/pypi'], + }); + }); + + it('extracts a file with only -r flags', () => { + const res = extractPackageFile('-r requirements-other.txt'); + expect(res).toMatchObject({ + deps: [], + managerData: { + requirementsFiles: ['requirements-other.txt'], + }, + }); + }); + + it('extracts a file with only -c flags', () => { + const res = extractPackageFile('-c constraints.txt'); + expect(res).toMatchObject({ + deps: [], + managerData: { + constraintsFiles: ['constraints.txt'], + }, + }); + }); }); }); diff --git a/lib/modules/manager/pip_requirements/extract.ts b/lib/modules/manager/pip_requirements/extract.ts index bf29df35775b1a..0f7818f49ea56c 100644 --- a/lib/modules/manager/pip_requirements/extract.ts +++ b/lib/modules/manager/pip_requirements/extract.ts @@ -131,7 +131,13 @@ export function extractPackageFile( return dep; }) .filter(is.truthy); - if (!deps.length) { + if ( + !deps.length && + !registryUrls.length && + !additionalRegistryUrls.length && + !additionalRequirementsFiles.length && + !additionalConstraintsFiles.length + ) { return null; } const res: PackageFileContent = { deps };