diff --git a/x-pack/plugins/fleet/server/services/package_policy.ts b/x-pack/plugins/fleet/server/services/package_policy.ts index a53334c893fec..17d624581c340 100644 --- a/x-pack/plugins/fleet/server/services/package_policy.ts +++ b/x-pack/plugins/fleet/server/services/package_policy.ts @@ -1840,7 +1840,19 @@ class PackagePolicyClientImpl implements PackagePolicyClient { pkgName: string, logger?: Logger ): Promise { - const pkgInstall = await getInstallation({ savedObjectsClient: soClient, pkgName, logger }); + let pkgInstall = await getInstallation({ savedObjectsClient: soClient, pkgName, logger }); + if (!pkgInstall) { + const esClient = await appContextService.getInternalUserESClient(); + + const result = await ensureInstalledPackage({ + esClient, + pkgName, + savedObjectsClient: soClient, + }); + if (result.package) { + pkgInstall = result.package; + } + } if (pkgInstall) { const packageInfo = await getPackageInfo({ savedObjectsClient: soClient,