diff --git a/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/components/actions_menu.tsx b/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/components/actions_menu.tsx index 6e2dc54470a17..fa4e03c81b656 100644 --- a/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/components/actions_menu.tsx +++ b/x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/components/actions_menu.tsx @@ -12,6 +12,7 @@ import { EuiContextMenuItem, EuiPortal } from '@elastic/eui'; import type { AgentPolicy } from '../../../types'; import { useAuthz } from '../../../hooks'; import { AgentEnrollmentFlyout, ContextMenuActions } from '../../../components'; +import { FLEET_SERVER_PACKAGE } from '../../../constants'; import { AgentPolicyYamlFlyout } from './agent_policy_yaml_flyout'; import { AgentPolicyCopyProvider } from './agent_policy_copy_provider'; @@ -36,6 +37,14 @@ export const AgentPolicyActionMenu = memo<{ enrollmentFlyoutOpenByDefault ); + const isFleetServerPolicy = useMemo( + () => + agentPolicy.package_policies?.some( + (packagePolicy) => packagePolicy.package?.name === FLEET_SERVER_PACKAGE + ), + [agentPolicy] + ); + const [isContextMenuOpen, setIsContextMenuOpen] = useState(false); const onContextMenuChange = useCallback( @@ -83,10 +92,17 @@ export const AgentPolicyActionMenu = memo<{ }} key="enrollAgents" > - + {isFleetServerPolicy ? ( + + ) : ( + + )} , viewPolicyItem, = ({ const fleetServerHostsRequest = useGetFleetServerHosts(); const fleetStatus = useFleetStatus(); + const { docLinks } = useStartServices(); const fleetServerHosts = fleetServerHostsRequest.data?.items?.filter((f) => true)?.[0]?.host_urls ?? []; @@ -102,19 +109,50 @@ export const AgentEnrollmentFlyout: React.FunctionComponent = ({

- + {isFleetServerPolicySelected ? ( + + ) : ( + + )}

- - - + {isFleetServerPolicySelected ? ( + + + + + ), + }} + /> + + ) : ( + + + + )} + {selectionType === 'tabs' ? ( <>