From 7c12534cdaa683f1a615b4752ecc431503146115 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Fern=C3=A1ndez=20G=C3=B3mez?= Date: Thu, 4 Mar 2021 11:01:23 +0100 Subject: [PATCH] [Fleet] Correctly track install status of an integration (#93464) --- .../fleet/sections/epm/screens/detail/index.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/x-pack/plugins/fleet/public/applications/fleet/sections/epm/screens/detail/index.tsx b/x-pack/plugins/fleet/public/applications/fleet/sections/epm/screens/detail/index.tsx index 8b278204ca2c9f..6c67da708a4c1f 100644 --- a/x-pack/plugins/fleet/public/applications/fleet/sections/epm/screens/detail/index.tsx +++ b/x-pack/plugins/fleet/public/applications/fleet/sections/epm/screens/detail/index.tsx @@ -37,7 +37,7 @@ import { Error, Loading } from '../../../../components'; import { useBreadcrumbs } from '../../../../hooks'; import { WithHeaderLayout, WithHeaderLayoutProps } from '../../../../layouts'; import { RELEASE_BADGE_DESCRIPTION, RELEASE_BADGE_LABEL } from '../../components/release_badge'; -import { useSetPackageInstallStatus } from '../../hooks'; +import { useGetPackageInstallStatus, useSetPackageInstallStatus } from '../../hooks'; import { IntegrationAgentPolicyCount, UpdateIcon, IconPanel, LoadingIconPanel } from './components'; import { OverviewPage } from './overview'; @@ -77,6 +77,15 @@ export function Detail() { // Package info state const [packageInfo, setPackageInfo] = useState(null); const setPackageInstallStatus = useSetPackageInstallStatus(); + const getPackageInstallStatus = useGetPackageInstallStatus(); + + const packageInstallStatus = useMemo(() => { + if (packageInfo === null || !packageInfo.name) { + return undefined; + } + return getPackageInstallStatus(packageInfo.name).status; + }, [packageInfo, getPackageInstallStatus]); + const updateAvailable = packageInfo && 'savedObject' in packageInfo && @@ -88,7 +97,6 @@ export function Detail() { pkgkey ); - const packageInstallStatus = packageInfoData?.response.status; const showCustomTab = useUIExtension(packageInfoData?.response.name ?? '', 'package-detail-custom') !== undefined;