diff --git a/lib/datasource/index.spec.ts b/lib/datasource/index.spec.ts
index 9263b9d484e08138ddce001b35390b71e0d9bbd6..3d964896e094a166f8222d129829d356062ede4e 100644
--- a/lib/datasource/index.spec.ts
+++ b/lib/datasource/index.spec.ts
@@ -12,6 +12,10 @@ jest.mock('./npm');
 const npmDatasource: any = _npm;
 
 describe('datasource/index', () => {
+  it('returns datasources', () => {
+    expect(datasource.getDatasources()).toBeDefined();
+    expect(datasource.getDatasourceList()).toBeDefined();
+  });
   it('returns if digests are supported', () => {
     expect(datasource.supportsDigests({ datasource: DATASOURCE_GITHUB })).toBe(
       true
diff --git a/lib/datasource/index.ts b/lib/datasource/index.ts
index 20d5aad7b5122546454aed0efc6bd075e14a0150..7e6b584976cf61d291400951a77fd335a0478dc5 100644
--- a/lib/datasource/index.ts
+++ b/lib/datasource/index.ts
@@ -16,6 +16,9 @@ import { loadModules } from '../util/modules';
 export * from './common';
 
 const datasources = loadModules<Datasource>(__dirname);
+export const getDatasources = (): Record<string, Datasource> => datasources;
+const datasourceList = Object.keys(datasources);
+export const getDatasourceList = (): string[] => datasourceList;
 
 const cacheNamespace = 'datasource-releases';