diff --git a/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.test.ts b/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.test.ts index 70a3478a45b6f..01767f7783fae 100644 --- a/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.test.ts +++ b/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.test.ts @@ -73,13 +73,31 @@ jest.mock('../../services/epm/packages/get', () => ({ }, { attributes: { - name: 'custom-package', + name: 'bundled-package', + version: '0.1.0', + updated_at: new Date().toISOString(), + install_status: 'installed', + install_source: 'bundled', + }, + }, + { + attributes: { + name: 'custom-package-1', version: '0.1.0', updated_at: new Date().toISOString(), install_status: 'installed', install_source: 'upload', }, }, + { + attributes: { + name: 'custom-package-2', + version: '0.1.0', + updated_at: new Date().toISOString(), + install_status: 'installed', + install_source: 'custom', + }, + }, ], }), })); @@ -207,7 +225,7 @@ describe('SyncIntegrationsTask', () => { expect(result).toEqual(getDeleteTaskRunResult()); }); - it('Should create fleet-synced-integrations doc for packages installed from registry', async () => { + it('Should create fleet-synced-integrations doc for bundled packages and packages installed from registry', async () => { mockOutputService.list.mockResolvedValue({ items: [ { @@ -269,6 +287,13 @@ describe('SyncIntegrationsTask', () => { install_status: 'installed', install_source: 'registry', }, + { + package_name: 'bundled-package', + package_version: '0.1.0', + updated_at: expect.any(String), + install_status: 'installed', + install_source: 'bundled', + }, ], remote_es_hosts: [ { @@ -354,6 +379,13 @@ describe('SyncIntegrationsTask', () => { install_status: 'installed', install_source: 'registry', }, + { + package_name: 'bundled-package', + package_version: '0.1.0', + updated_at: expect.any(String), + install_status: 'installed', + install_source: 'bundled', + }, ], remote_es_hosts: [ { @@ -527,6 +559,13 @@ describe('SyncIntegrationsTask', () => { install_status: 'installed', install_source: 'registry', }, + { + package_name: 'bundled-package', + package_version: '0.1.0', + updated_at: expect.any(String), + install_status: 'installed', + install_source: 'bundled', + }, { package_name: 'package-3', package_version: '0.3.0', diff --git a/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.ts b/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.ts index 143115d2278c3..706a613d1e450 100644 --- a/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.ts +++ b/x-pack/platform/plugins/shared/fleet/server/tasks/sync_integrations/sync_integrations_task.ts @@ -241,7 +241,11 @@ export class SyncIntegrationsTask { sortOrder: 'asc', }); newDoc.integrations = packageSavedObjects.saved_objects - .filter((item) => item.attributes.install_source === 'registry') + .filter( + (item) => + item.attributes.install_source === 'registry' || + item.attributes.install_source === 'bundled' + ) // not included install sources: 'custom' and 'upload' .map((item) => { return { package_name: item.attributes.name,