Add eslint rule to enforce/autofix import group order

This commit is contained in:
John Schulz 2021-03-02 13:40:47 -05:00
parent cce6861b89
commit f9be98d848
99 changed files with 196 additions and 179 deletions

View file

@ -789,6 +789,21 @@ module.exports = {
}, },
}, },
/**
* Fleet overrides
*/
{
files: ['x-pack/plugins/fleet/**/*.{js,mjs,ts,tsx}'],
rules: {
'import/order': [
'warn',
{
groups: ['builtin', 'external', 'internal', 'parent'],
},
],
},
},
/** /**
* Security Solution overrides * Security Solution overrides
*/ */

View file

@ -5,8 +5,8 @@
* 2.0. * 2.0.
*/ */
import { defaultPackages } from './epm';
import { AgentPolicy } from '../types'; import { AgentPolicy } from '../types';
import { defaultPackages } from './epm';
export const AGENT_POLICY_SAVED_OBJECT_TYPE = 'ingest-agent-policies'; export const AGENT_POLICY_SAVED_OBJECT_TYPE = 'ingest-agent-policies';
export const AGENT_POLICY_INDEX = '.fleet-policies'; export const AGENT_POLICY_INDEX = '.fleet-policies';
export const agentPolicyStatuses = { export const agentPolicyStatuses = {

View file

@ -5,8 +5,8 @@
* 2.0. * 2.0.
*/ */
import { isAgentUpgradeable } from './is_agent_upgradeable';
import { Agent } from '../types/models/agent'; import { Agent } from '../types/models/agent';
import { isAgentUpgradeable } from './is_agent_upgradeable';
const getAgent = ({ const getAgent = ({
version, version,

View file

@ -5,8 +5,8 @@
* 2.0. * 2.0.
*/ */
import { FullAgentPolicy } from './agent_policy';
import { AGENT_TYPE_EPHEMERAL, AGENT_TYPE_PERMANENT, AGENT_TYPE_TEMPORARY } from '../../constants'; import { AGENT_TYPE_EPHEMERAL, AGENT_TYPE_PERMANENT, AGENT_TYPE_TEMPORARY } from '../../constants';
import { FullAgentPolicy } from './agent_policy';
export type AgentType = export type AgentType =
| typeof AGENT_TYPE_EPHEMERAL | typeof AGENT_TYPE_EPHEMERAL

View file

@ -14,6 +14,9 @@ import { FormattedMessage } from '@kbn/i18n/react';
import { i18n } from '@kbn/i18n'; import { i18n } from '@kbn/i18n';
import styled from 'styled-components'; import styled from 'styled-components';
import useObservable from 'react-use/lib/useObservable'; import useObservable from 'react-use/lib/useObservable';
import { FleetConfigType, FleetStartServices } from '../../plugin';
import { KibanaContextProvider } from '../../../../../../src/plugins/kibana_react/public';
import { EuiThemeProvider } from '../../../../../../src/plugins/kibana_react/common';
import { import {
ConfigContext, ConfigContext,
FleetStatusProvider, FleetStatusProvider,
@ -34,10 +37,7 @@ import { DataStreamApp } from './sections/data_stream';
import { FleetApp } from './sections/agents'; import { FleetApp } from './sections/agents';
import { IngestManagerOverview } from './sections/overview'; import { IngestManagerOverview } from './sections/overview';
import { ProtectedRoute } from './index'; import { ProtectedRoute } from './index';
import { FleetConfigType, FleetStartServices } from '../../plugin';
import { UIExtensionsStorage } from './types'; import { UIExtensionsStorage } from './types';
import { KibanaContextProvider } from '../../../../../../src/plugins/kibana_react/public';
import { EuiThemeProvider } from '../../../../../../src/plugins/kibana_react/common';
import { UIExtensionsContext } from './hooks/use_ui_extension'; import { UIExtensionsContext } from './hooks/use_ui_extension';
const ErrorLayout = ({ children }: { children: JSX.Element }) => ( const ErrorLayout = ({ children }: { children: JSX.Element }) => (

View file

@ -6,9 +6,9 @@
*/ */
import React, { useState, useContext, useEffect } from 'react'; import React, { useState, useContext, useEffect } from 'react';
import { GetFleetStatusResponse } from '../types';
import { useConfig } from './use_config'; import { useConfig } from './use_config';
import { sendGetFleetStatus } from './use_request'; import { sendGetFleetStatus } from './use_request';
import { GetFleetStatusResponse } from '../types';
interface FleetStatusState { interface FleetStatusState {
enabled: boolean; enabled: boolean;

View file

@ -5,12 +5,6 @@
* 2.0. * 2.0.
*/ */
import {
useRequest,
sendRequest,
useConditionalRequest,
SendConditionalRequestConfig,
} from './use_request';
import { agentPolicyRouteService } from '../../services'; import { agentPolicyRouteService } from '../../services';
import { import {
GetAgentPoliciesRequest, GetAgentPoliciesRequest,
@ -26,6 +20,12 @@ import {
DeleteAgentPolicyRequest, DeleteAgentPolicyRequest,
DeleteAgentPolicyResponse, DeleteAgentPolicyResponse,
} from '../../types'; } from '../../types';
import {
useRequest,
sendRequest,
useConditionalRequest,
SendConditionalRequestConfig,
} from './use_request';
export const useGetAgentPolicies = (query?: GetAgentPoliciesRequest['query']) => { export const useGetAgentPolicies = (query?: GetAgentPoliciesRequest['query']) => {
return useRequest<GetAgentPoliciesResponse>({ return useRequest<GetAgentPoliciesResponse>({

View file

@ -5,7 +5,6 @@
* 2.0. * 2.0.
*/ */
import { useRequest, UseRequestConfig, sendRequest } from './use_request';
import { agentRouteService } from '../../services'; import { agentRouteService } from '../../services';
import { import {
GetOneAgentResponse, GetOneAgentResponse,
@ -30,6 +29,7 @@ import {
PostNewAgentActionRequest, PostNewAgentActionRequest,
PostNewAgentActionResponse, PostNewAgentActionResponse,
} from '../../types'; } from '../../types';
import { useRequest, UseRequestConfig, sendRequest } from './use_request';
type RequestOptions = Pick<Partial<UseRequestConfig>, 'pollIntervalMs'>; type RequestOptions = Pick<Partial<UseRequestConfig>, 'pollIntervalMs'>;

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import { sendRequest } from './use_request';
import { appRoutesService } from '../../services'; import { appRoutesService } from '../../services';
import { CheckPermissionsResponse } from '../../types'; import { CheckPermissionsResponse } from '../../types';
import { sendRequest } from './use_request';
export const sendGetPermissionsCheck = () => { export const sendGetPermissionsCheck = () => {
return sendRequest<CheckPermissionsResponse>({ return sendRequest<CheckPermissionsResponse>({

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import { useRequest } from './use_request';
import { dataStreamRouteService } from '../../services'; import { dataStreamRouteService } from '../../services';
import { GetDataStreamsResponse } from '../../types'; import { GetDataStreamsResponse } from '../../types';
import { useRequest } from './use_request';
export const useGetDataStreams = () => { export const useGetDataStreams = () => {
return useRequest<GetDataStreamsResponse>({ return useRequest<GetDataStreamsResponse>({

View file

@ -5,6 +5,12 @@
* 2.0. * 2.0.
*/ */
import { enrollmentAPIKeyRouteService } from '../../services';
import {
GetOneEnrollmentAPIKeyResponse,
GetEnrollmentAPIKeysResponse,
GetEnrollmentAPIKeysRequest,
} from '../../types';
import { import {
useRequest, useRequest,
UseRequestConfig, UseRequestConfig,
@ -12,12 +18,6 @@ import {
useConditionalRequest, useConditionalRequest,
SendConditionalRequestConfig, SendConditionalRequestConfig,
} from './use_request'; } from './use_request';
import { enrollmentAPIKeyRouteService } from '../../services';
import {
GetOneEnrollmentAPIKeyResponse,
GetEnrollmentAPIKeysResponse,
GetEnrollmentAPIKeysRequest,
} from '../../types';
type RequestOptions = Pick<Partial<UseRequestConfig>, 'pollIntervalMs'>; type RequestOptions = Pick<Partial<UseRequestConfig>, 'pollIntervalMs'>;

View file

@ -5,7 +5,6 @@
* 2.0. * 2.0.
*/ */
import { useRequest, sendRequest } from './use_request';
import { epmRouteService } from '../../services'; import { epmRouteService } from '../../services';
import { import {
GetCategoriesRequest, GetCategoriesRequest,
@ -18,6 +17,7 @@ import {
DeletePackageResponse, DeletePackageResponse,
} from '../../types'; } from '../../types';
import { GetStatsResponse } from '../../../../../common'; import { GetStatsResponse } from '../../../../../common';
import { useRequest, sendRequest } from './use_request';
export const useGetCategories = (query: GetCategoriesRequest['query'] = {}) => { export const useGetCategories = (query: GetCategoriesRequest['query'] = {}) => {
return useRequest<GetCategoriesResponse>({ return useRequest<GetCategoriesResponse>({

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import { sendRequest, useRequest } from './use_request';
import { outputRoutesService } from '../../services'; import { outputRoutesService } from '../../services';
import { PutOutputRequest, GetOutputsResponse } from '../../types'; import { PutOutputRequest, GetOutputsResponse } from '../../types';
import { sendRequest, useRequest } from './use_request';
export function useGetOutputs() { export function useGetOutputs() {
return useRequest<GetOutputsResponse>({ return useRequest<GetOutputsResponse>({

View file

@ -5,7 +5,6 @@
* 2.0. * 2.0.
*/ */
import { sendRequest, useRequest } from './use_request';
import { packagePolicyRouteService } from '../../services'; import { packagePolicyRouteService } from '../../services';
import { import {
CreatePackagePolicyRequest, CreatePackagePolicyRequest,
@ -20,6 +19,7 @@ import {
GetPackagePoliciesResponse, GetPackagePoliciesResponse,
GetOnePackagePolicyResponse, GetOnePackagePolicyResponse,
} from '../../../../../common/types/rest_spec'; } from '../../../../../common/types/rest_spec';
import { sendRequest, useRequest } from './use_request';
export const sendCreatePackagePolicy = (body: CreatePackagePolicyRequest['body']) => { export const sendCreatePackagePolicy = (body: CreatePackagePolicyRequest['body']) => {
return sendRequest<CreatePackagePolicyResponse>({ return sendRequest<CreatePackagePolicyResponse>({

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import { sendRequest, useRequest } from './use_request';
import { settingsRoutesService } from '../../services'; import { settingsRoutesService } from '../../services';
import { PutSettingsResponse, PutSettingsRequest, GetSettingsResponse } from '../../types'; import { PutSettingsResponse, PutSettingsRequest, GetSettingsResponse } from '../../types';
import { sendRequest, useRequest } from './use_request';
export function useGetSettings() { export function useGetSettings() {
return useRequest<GetSettingsResponse>({ return useRequest<GetSettingsResponse>({

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import { sendRequest } from './use_request';
import { setupRouteService, fleetSetupRouteService } from '../../services'; import { setupRouteService, fleetSetupRouteService } from '../../services';
import { GetFleetStatusResponse } from '../../types'; import { GetFleetStatusResponse } from '../../types';
import { sendRequest } from './use_request';
export const sendSetup = () => { export const sendSetup = () => {
return sendRequest({ return sendRequest({

View file

@ -11,8 +11,8 @@ import { render as reactRender, RenderOptions, RenderResult, act } from '@testin
import { ScopedHistory } from '../../../../../../../src/core/public'; import { ScopedHistory } from '../../../../../../../src/core/public';
import { FleetAppContext } from '../app'; import { FleetAppContext } from '../app';
import { FleetConfigType } from '../../../plugin'; import { FleetConfigType } from '../../../plugin';
import { createConfigurationMock } from './plugin_configuration';
import { UIExtensionsStorage } from '../types'; import { UIExtensionsStorage } from '../types';
import { createConfigurationMock } from './plugin_configuration';
import { createStartMock } from './plugin_interfaces'; import { createStartMock } from './plugin_interfaces';
import { createStartServices } from './fleet_start_services'; import { createStartServices } from './fleet_start_services';
import { MockedFleetStart, MockedFleetStartServices } from './types'; import { MockedFleetStart, MockedFleetStartServices } from './types';

View file

@ -9,9 +9,9 @@ import React from 'react';
import { I18nProvider } from '@kbn/i18n/react'; import { I18nProvider } from '@kbn/i18n/react';
import { MockedKeys } from '@kbn/utility-types/jest'; import { MockedKeys } from '@kbn/utility-types/jest';
import { coreMock } from '../../../../../../../src/core/public/mocks'; import { coreMock } from '../../../../../../../src/core/public/mocks';
import { createStartDepsMock } from './plugin_dependencies';
import { IStorage, Storage } from '../../../../../../../src/plugins/kibana_utils/public'; import { IStorage, Storage } from '../../../../../../../src/plugins/kibana_utils/public';
import { setHttpClient } from '../hooks/use_request'; import { setHttpClient } from '../hooks/use_request';
import { createStartDepsMock } from './plugin_dependencies';
import { MockedFleetStartServices } from './types'; import { MockedFleetStartServices } from './types';
// Taken from core. See: src/plugins/kibana_utils/public/storage/storage.test.ts // Taken from core. See: src/plugins/kibana_utils/public/storage/storage.test.ts

View file

@ -5,13 +5,13 @@
* 2.0. * 2.0.
*/ */
import { Route } from 'react-router-dom';
import React from 'react';
import { act } from 'react-test-renderer';
import { createTestRendererMock, MockedFleetStartServices, TestRenderer } from '../../../mock'; import { createTestRendererMock, MockedFleetStartServices, TestRenderer } from '../../../mock';
import { PAGE_ROUTING_PATHS, pagePathGetters, PLUGIN_ID } from '../../../constants'; import { PAGE_ROUTING_PATHS, pagePathGetters, PLUGIN_ID } from '../../../constants';
import { Route } from 'react-router-dom';
import { CreatePackagePolicyPage } from './index';
import React from 'react';
import { CreatePackagePolicyRouteState } from '../../../types'; import { CreatePackagePolicyRouteState } from '../../../types';
import { act } from 'react-test-renderer'; import { CreatePackagePolicyPage } from './index';
describe('when on the package policy create page', () => { describe('when on the package policy create page', () => {
const createPageUrlPath = pagePathGetters.add_integration_to_policy({ pkgkey: 'nginx-0.3.7' }); const createPageUrlPath = pagePathGetters.add_integration_to_policy({ pkgkey: 'nginx-0.3.7' });

View file

@ -37,6 +37,12 @@ import {
} from '../../../hooks'; } from '../../../hooks';
import { Loading } from '../../../components'; import { Loading } from '../../../components';
import { ConfirmDeployAgentPolicyModal } from '../components'; import { ConfirmDeployAgentPolicyModal } from '../components';
import { useIntraAppState } from '../../../hooks/use_intra_app_state';
import { useUIExtension } from '../../../hooks/use_ui_extension';
import { ExtensionWrapper } from '../../../components/extension_wrapper';
import { PackagePolicyEditExtensionComponentProps } from '../../../types';
import { PLUGIN_ID } from '../../../../../../common/constants';
import { pkgKeyFromPackageInfo } from '../../../services/pkg_key_from_package_info';
import { CreatePackagePolicyPageLayout } from './components'; import { CreatePackagePolicyPageLayout } from './components';
import { CreatePackagePolicyFrom, PackagePolicyFormState } from './types'; import { CreatePackagePolicyFrom, PackagePolicyFormState } from './types';
import { import {
@ -48,12 +54,6 @@ import { StepSelectPackage } from './step_select_package';
import { StepSelectAgentPolicy } from './step_select_agent_policy'; import { StepSelectAgentPolicy } from './step_select_agent_policy';
import { StepConfigurePackagePolicy } from './step_configure_package'; import { StepConfigurePackagePolicy } from './step_configure_package';
import { StepDefinePackagePolicy } from './step_define_package_policy'; import { StepDefinePackagePolicy } from './step_define_package_policy';
import { useIntraAppState } from '../../../hooks/use_intra_app_state';
import { useUIExtension } from '../../../hooks/use_ui_extension';
import { ExtensionWrapper } from '../../../components/extension_wrapper';
import { PackagePolicyEditExtensionComponentProps } from '../../../types';
import { PLUGIN_ID } from '../../../../../../common/constants';
import { pkgKeyFromPackageInfo } from '../../../services/pkg_key_from_package_info';
const StepsWithLessPadding = styled(EuiSteps)` const StepsWithLessPadding = styled(EuiSteps)`
.euiStep__content { .euiStep__content {

View file

@ -21,8 +21,8 @@ import {
import { AgentPolicy, PackageInfo, PackagePolicy, NewPackagePolicy } from '../../../types'; import { AgentPolicy, PackageInfo, PackagePolicy, NewPackagePolicy } from '../../../types';
import { packageToPackagePolicyInputs } from '../../../services'; import { packageToPackagePolicyInputs } from '../../../services';
import { Loading } from '../../../components'; import { Loading } from '../../../components';
import { PackagePolicyValidationResults } from './services';
import { pkgKeyFromPackageInfo } from '../../../services/pkg_key_from_package_info'; import { pkgKeyFromPackageInfo } from '../../../services/pkg_key_from_package_info';
import { PackagePolicyValidationResults } from './services';
export const StepDefinePackagePolicy: React.FunctionComponent<{ export const StepDefinePackagePolicy: React.FunctionComponent<{
agentPolicy: AgentPolicy; agentPolicy: AgentPolicy;

View file

@ -33,10 +33,10 @@ import {
} from '../../../hooks'; } from '../../../hooks';
import { Loading, Error } from '../../../components'; import { Loading, Error } from '../../../components';
import { WithHeaderLayout } from '../../../layouts'; import { WithHeaderLayout } from '../../../layouts';
import { AgentPolicyRefreshContext, useGetAgentStatus, AgentStatusRefreshContext } from './hooks';
import { LinkedAgentCount, AgentPolicyActionMenu } from '../components'; import { LinkedAgentCount, AgentPolicyActionMenu } from '../components';
import { PackagePoliciesView, SettingsView } from './components';
import { useIntraAppState } from '../../../hooks/use_intra_app_state'; import { useIntraAppState } from '../../../hooks/use_intra_app_state';
import { AgentPolicyRefreshContext, useGetAgentStatus, AgentStatusRefreshContext } from './hooks';
import { PackagePoliciesView, SettingsView } from './components';
const Divider = styled.div` const Divider = styled.div`
width: 0; width: 0;

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import url from 'url';
import React, { memo, useMemo, useState, useCallback, useEffect } from 'react'; import React, { memo, useMemo, useState, useCallback, useEffect } from 'react';
import styled from 'styled-components'; import styled from 'styled-components';
import url from 'url';
import { encode } from 'rison-node'; import { encode } from 'rison-node';
import { stringify } from 'query-string'; import { stringify } from 'query-string';
import { import {

View file

@ -8,8 +8,8 @@
import React, { memo, useState, useEffect } from 'react'; import React, { memo, useState, useEffect } from 'react';
import { EuiPopover, EuiFilterButton, EuiFilterSelectItem } from '@elastic/eui'; import { EuiPopover, EuiFilterButton, EuiFilterSelectItem } from '@elastic/eui';
import { i18n } from '@kbn/i18n'; import { i18n } from '@kbn/i18n';
import { ORDERED_FILTER_LOG_LEVELS, AGENT_LOG_INDEX_PATTERN, LOG_LEVEL_FIELD } from './constants';
import { useStartServices } from '../../../../../hooks'; import { useStartServices } from '../../../../../hooks';
import { ORDERED_FILTER_LOG_LEVELS, AGENT_LOG_INDEX_PATTERN, LOG_LEVEL_FIELD } from './constants';
function sortLogLevels(levels: string[]): string[] { function sortLogLevels(levels: string[]): string[] {
return [ return [

View file

@ -34,10 +34,10 @@ import {
} from '../../../hooks'; } from '../../../hooks';
import { WithHeaderLayout } from '../../../layouts'; import { WithHeaderLayout } from '../../../layouts';
import { AgentHealth } from '../components'; import { AgentHealth } from '../components';
import { AgentRefreshContext } from './hooks';
import { AgentLogs, AgentDetailsActionMenu, AgentDetailsContent } from './components';
import { useIntraAppState } from '../../../hooks/use_intra_app_state'; import { useIntraAppState } from '../../../hooks/use_intra_app_state';
import { isAgentUpgradeable } from '../../../services'; import { isAgentUpgradeable } from '../../../services';
import { AgentRefreshContext } from './hooks';
import { AgentLogs, AgentDetailsActionMenu, AgentDetailsContent } from './components';
export const AgentDetailsPage: React.FunctionComponent = () => { export const AgentDetailsPage: React.FunctionComponent = () => {
const { const {

View file

@ -23,8 +23,8 @@ import { i18n } from '@kbn/i18n';
import { FormattedMessage } from '@kbn/i18n/react'; import { FormattedMessage } from '@kbn/i18n/react';
import { AgentPolicy } from '../../../../types'; import { AgentPolicy } from '../../../../types';
import { useStartServices, useLink, sendGetOneAgentPolicyFull } from '../../../../hooks'; import { useStartServices, useLink, sendGetOneAgentPolicyFull } from '../../../../hooks';
import { DownloadStep, AgentPolicySelectionStep } from './steps';
import { fullAgentPolicyToYaml, agentPolicyRouteService } from '../../../../services'; import { fullAgentPolicyToYaml, agentPolicyRouteService } from '../../../../services';
import { DownloadStep, AgentPolicySelectionStep } from './steps';
interface Props { interface Props {
agentPolicies?: AgentPolicy[]; agentPolicies?: AgentPolicy[];

View file

@ -9,8 +9,8 @@ import React from 'react';
import { EuiText, EuiButton, EuiSpacer } from '@elastic/eui'; import { EuiText, EuiButton, EuiSpacer } from '@elastic/eui';
import { FormattedMessage } from '@kbn/i18n/react'; import { FormattedMessage } from '@kbn/i18n/react';
import { i18n } from '@kbn/i18n'; import { i18n } from '@kbn/i18n';
import { EnrollmentStepAgentPolicy } from './agent_policy_selection';
import { AgentPolicy } from '../../../../types'; import { AgentPolicy } from '../../../../types';
import { EnrollmentStepAgentPolicy } from './agent_policy_selection';
export const DownloadStep = () => { export const DownloadStep = () => {
return { return {

View file

@ -11,13 +11,13 @@ import { HashRouter as Router, Route, Switch, Redirect } from 'react-router-dom'
import { PAGE_ROUTING_PATHS } from '../../constants'; import { PAGE_ROUTING_PATHS } from '../../constants';
import { Loading, Error } from '../../components'; import { Loading, Error } from '../../components';
import { useConfig, useFleetStatus, useBreadcrumbs, useCapabilities } from '../../hooks'; import { useConfig, useFleetStatus, useBreadcrumbs, useCapabilities } from '../../hooks';
import { WithoutHeaderLayout } from '../../layouts';
import { AgentListPage } from './agent_list_page'; import { AgentListPage } from './agent_list_page';
import { SetupPage } from './setup_page'; import { SetupPage } from './setup_page';
import { AgentDetailsPage } from './agent_details_page'; import { AgentDetailsPage } from './agent_details_page';
import { NoAccessPage } from './error_pages/no_access'; import { NoAccessPage } from './error_pages/no_access';
import { EnrollmentTokenListPage } from './enrollment_token_list_page'; import { EnrollmentTokenListPage } from './enrollment_token_list_page';
import { ListLayout } from './components/list_layout'; import { ListLayout } from './components/list_layout';
import { WithoutHeaderLayout } from '../../layouts';
export const FleetApp: React.FunctionComponent = () => { export const FleetApp: React.FunctionComponent = () => {
useBreadcrumbs('fleet'); useBreadcrumbs('fleet');

View file

@ -22,8 +22,8 @@ import { FormattedMessage } from '@kbn/i18n/react';
import { Loading } from '../../../components'; import { Loading } from '../../../components';
import { PackageList } from '../../../types'; import { PackageList } from '../../../types';
import { useLocalSearch, searchIdField } from '../hooks'; import { useLocalSearch, searchIdField } from '../hooks';
import { PackageCard } from './package_card';
import { pkgKeyFromPackageInfo } from '../../../services/pkg_key_from_package_info'; import { pkgKeyFromPackageInfo } from '../../../services/pkg_key_from_package_info';
import { PackageCard } from './package_card';
interface ListProps { interface ListProps {
isLoading?: boolean; isLoading?: boolean;

View file

@ -5,11 +5,10 @@
* 2.0. * 2.0.
*/ */
import { createTestRendererMock, MockedFleetStartServices, TestRenderer } from '../../../../mock';
import { Detail } from './index';
import React, { lazy, memo } from 'react'; import React, { lazy, memo } from 'react';
import { PAGE_ROUTING_PATHS, pagePathGetters } from '../../../../constants';
import { Route } from 'react-router-dom'; import { Route } from 'react-router-dom';
import { act, cleanup } from '@testing-library/react';
import { PAGE_ROUTING_PATHS, pagePathGetters } from '../../../../constants';
import { import {
GetAgentPoliciesResponse, GetAgentPoliciesResponse,
GetFleetStatusResponse, GetFleetStatusResponse,
@ -24,7 +23,8 @@ import {
fleetSetupRouteService, fleetSetupRouteService,
packagePolicyRouteService, packagePolicyRouteService,
} from '../../../../../../../common/services'; } from '../../../../../../../common/services';
import { act, cleanup } from '@testing-library/react'; import { createTestRendererMock, MockedFleetStartServices, TestRenderer } from '../../../../mock';
import { Detail } from './index';
describe('when on integration detail', () => { describe('when on integration detail', () => {
const pkgkey = 'nginx-0.3.7'; const pkgkey = 'nginx-0.3.7';

View file

@ -14,12 +14,12 @@ import {
EuiDescriptionListTitle, EuiDescriptionListTitle,
EuiDescriptionListDescription, EuiDescriptionListDescription,
} from '@elastic/eui'; } from '@elastic/eui';
import { OverviewPanel } from './overview_panel';
import { OverviewStats } from './overview_stats';
import { SO_SEARCH_LIMIT } from '../../../constants'; import { SO_SEARCH_LIMIT } from '../../../constants';
import { useLink, useGetPackagePolicies } from '../../../hooks'; import { useLink, useGetPackagePolicies } from '../../../hooks';
import { AgentPolicy } from '../../../types'; import { AgentPolicy } from '../../../types';
import { Loading } from '../../agents/components'; import { Loading } from '../../agents/components';
import { OverviewStats } from './overview_stats';
import { OverviewPanel } from './overview_panel';
export const OverviewPolicySection: React.FC<{ agentPolicies: AgentPolicy[] }> = ({ export const OverviewPolicySection: React.FC<{ agentPolicies: AgentPolicy[] }> = ({
agentPolicies, agentPolicies,

View file

@ -14,10 +14,10 @@ import {
EuiDescriptionListDescription, EuiDescriptionListDescription,
EuiFlexItem, EuiFlexItem,
} from '@elastic/eui'; } from '@elastic/eui';
import { OverviewPanel } from './overview_panel';
import { OverviewStats } from './overview_stats';
import { useLink, useGetAgentStatus } from '../../../hooks'; import { useLink, useGetAgentStatus } from '../../../hooks';
import { Loading } from '../../agents/components'; import { Loading } from '../../agents/components';
import { OverviewPanel } from './overview_panel';
import { OverviewStats } from './overview_stats';
export const OverviewAgentSection = () => { export const OverviewAgentSection = () => {
const { getHref } = useLink(); const { getHref } = useLink();

View file

@ -14,10 +14,10 @@ import {
EuiDescriptionListTitle, EuiDescriptionListTitle,
EuiDescriptionListDescription, EuiDescriptionListDescription,
} from '@elastic/eui'; } from '@elastic/eui';
import { OverviewPanel } from './overview_panel';
import { OverviewStats } from './overview_stats';
import { useLink, useGetDataStreams, useStartServices } from '../../../hooks'; import { useLink, useGetDataStreams, useStartServices } from '../../../hooks';
import { Loading } from '../../agents/components'; import { Loading } from '../../agents/components';
import { OverviewPanel } from './overview_panel';
import { OverviewStats } from './overview_stats';
export const OverviewDatastreamSection: React.FC = () => { export const OverviewDatastreamSection: React.FC = () => {
const { getHref } = useLink(); const { getHref } = useLink();

View file

@ -14,11 +14,11 @@ import {
EuiDescriptionListTitle, EuiDescriptionListTitle,
EuiDescriptionListDescription, EuiDescriptionListDescription,
} from '@elastic/eui'; } from '@elastic/eui';
import { OverviewPanel } from './overview_panel';
import { OverviewStats } from './overview_stats';
import { useLink, useGetPackages } from '../../../hooks'; import { useLink, useGetPackages } from '../../../hooks';
import { Loading } from '../../agents/components'; import { Loading } from '../../agents/components';
import { installationStatuses } from '../../../../../../common/constants'; import { installationStatuses } from '../../../../../../common/constants';
import { OverviewStats } from './overview_stats';
import { OverviewPanel } from './overview_panel';
export const OverviewIntegrationSection: React.FC = () => { export const OverviewIntegrationSection: React.FC = () => {
const { getHref } = useLink(); const { getHref } = useLink();

View file

@ -22,10 +22,10 @@ import {
import { Storage } from '../../../../src/plugins/kibana_utils/public'; import { Storage } from '../../../../src/plugins/kibana_utils/public';
import { LicensingPluginSetup } from '../../licensing/public'; import { LicensingPluginSetup } from '../../licensing/public';
import { PLUGIN_ID, CheckPermissionsResponse, PostIngestSetupResponse } from '../common'; import { PLUGIN_ID, CheckPermissionsResponse, PostIngestSetupResponse } from '../common';
import { BASE_PATH } from './applications/fleet/constants';
import { FleetConfigType } from '../common/types'; import { FleetConfigType } from '../common/types';
import { setupRouteService, appRoutesService } from '../common'; import { setupRouteService, appRoutesService } from '../common';
import { BASE_PATH } from './applications/fleet/constants';
import { licenseService } from './applications/fleet/hooks/use_license'; import { licenseService } from './applications/fleet/hooks/use_license';
import { setHttpClient } from './applications/fleet/hooks/use_request/use_request'; import { setHttpClient } from './applications/fleet/hooks/use_request/use_request';
import { import {

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import os from 'os';
import { createFlagError, run, ToolingLog } from '@kbn/dev-utils'; import { createFlagError, run, ToolingLog } from '@kbn/dev-utils';
import fetch from 'node-fetch'; import fetch from 'node-fetch';
import os from 'os';
import { import {
Agent as _Agent, Agent as _Agent,
PostAgentCheckinRequest, PostAgentCheckinRequest,

View file

@ -7,11 +7,11 @@
import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; import { UsageCollectionSetup } from 'src/plugins/usage_collection/server';
import { CoreSetup } from 'kibana/server'; import { CoreSetup } from 'kibana/server';
import { FleetConfigType } from '..';
import { getIsAgentsEnabled } from './config_collectors'; import { getIsAgentsEnabled } from './config_collectors';
import { AgentUsage, getAgentUsage } from './agent_collectors'; import { AgentUsage, getAgentUsage } from './agent_collectors';
import { getInternalClients } from './helpers'; import { getInternalClients } from './helpers';
import { PackageUsage, getPackageUsage } from './package_collectors'; import { PackageUsage, getPackageUsage } from './package_collectors';
import { FleetConfigType } from '..';
interface Usage { interface Usage {
agents_enabled: boolean; agents_enabled: boolean;

View file

@ -7,12 +7,12 @@
import { schema, TypeOf } from '@kbn/config-schema'; import { schema, TypeOf } from '@kbn/config-schema';
import { PluginConfigDescriptor, PluginInitializerContext } from 'src/core/server'; import { PluginConfigDescriptor, PluginInitializerContext } from 'src/core/server';
import { FleetPlugin } from './plugin';
import { import {
AGENT_POLICY_ROLLOUT_RATE_LIMIT_INTERVAL_MS, AGENT_POLICY_ROLLOUT_RATE_LIMIT_INTERVAL_MS,
AGENT_POLICY_ROLLOUT_RATE_LIMIT_REQUEST_PER_INTERVAL, AGENT_POLICY_ROLLOUT_RATE_LIMIT_REQUEST_PER_INTERVAL,
AGENT_POLLING_REQUEST_TIMEOUT_MS, AGENT_POLLING_REQUEST_TIMEOUT_MS,
} from '../common'; } from '../common';
import { FleetPlugin } from './plugin';
export { default as apm } from 'elastic-apm-node'; export { default as apm } from 'elastic-apm-node';
export { export {

View file

@ -13,9 +13,9 @@ import {
import { coreMock } from '../../../../src/core/server/mocks'; import { coreMock } from '../../../../src/core/server/mocks';
import { licensingMock } from '../../../plugins/licensing/server/mocks'; import { licensingMock } from '../../../plugins/licensing/server/mocks';
import { FleetAppContext } from './plugin';
import { encryptedSavedObjectsMock } from '../../encrypted_saved_objects/server/mocks'; import { encryptedSavedObjectsMock } from '../../encrypted_saved_objects/server/mocks';
import { securityMock } from '../../security/server/mocks'; import { securityMock } from '../../security/server/mocks';
import { FleetAppContext } from './plugin';
import { PackagePolicyServiceInterface } from './services/package_policy'; import { PackagePolicyServiceInterface } from './services/package_policy';
import { AgentPolicyServiceInterface, AgentService } from './services'; import { AgentPolicyServiceInterface, AgentService } from './services';

View file

@ -29,6 +29,13 @@ import {
} from '../../encrypted_saved_objects/server'; } from '../../encrypted_saved_objects/server';
import { SecurityPluginSetup, SecurityPluginStart } from '../../security/server'; import { SecurityPluginSetup, SecurityPluginStart } from '../../security/server';
import { PluginSetupContract as FeaturesPluginSetup } from '../../features/server'; import { PluginSetupContract as FeaturesPluginSetup } from '../../features/server';
import {
EsAssetReference,
FleetConfigType,
NewPackagePolicy,
UpdatePackagePolicy,
} from '../common';
import { CloudSetup } from '../../cloud/server';
import { import {
PLUGIN_ID, PLUGIN_ID,
OUTPUT_SAVED_OBJECT_TYPE, OUTPUT_SAVED_OBJECT_TYPE,
@ -55,12 +62,6 @@ import {
registerSettingsRoutes, registerSettingsRoutes,
registerAppRoutes, registerAppRoutes,
} from './routes'; } from './routes';
import {
EsAssetReference,
FleetConfigType,
NewPackagePolicy,
UpdatePackagePolicy,
} from '../common';
import { import {
appContextService, appContextService,
licenseService, licenseService,
@ -78,7 +79,6 @@ import {
listAgents, listAgents,
getAgent, getAgent,
} from './services/agents'; } from './services/agents';
import { CloudSetup } from '../../cloud/server';
import { agentCheckinState } from './services/agents/checkin/state'; import { agentCheckinState } from './services/agents/checkin/state';
import { registerFleetUsageCollector } from './collectors/register'; import { registerFleetUsageCollector } from './collectors/register';
import { getInstallation } from './services/epm/packages'; import { getInstallation } from './services/epm/packages';

View file

@ -5,7 +5,6 @@
* 2.0. * 2.0.
*/ */
import { postAgentAcksHandlerBuilder } from './acks_handlers';
import { import {
ElasticsearchClient, ElasticsearchClient,
KibanaResponseFactory, KibanaResponseFactory,
@ -20,6 +19,7 @@ import {
import { PostAgentAcksResponse } from '../../../common/types/rest_spec'; import { PostAgentAcksResponse } from '../../../common/types/rest_spec';
import { AckEventSchema } from '../../types/models'; import { AckEventSchema } from '../../types/models';
import { AcksService } from '../../services/agents'; import { AcksService } from '../../services/agents';
import { postAgentAcksHandlerBuilder } from './acks_handlers';
describe('test acks schema', () => { describe('test acks schema', () => {
it('validate that ack event schema expect action id', async () => { it('validate that ack event schema expect action id', async () => {

View file

@ -5,7 +5,6 @@
* 2.0. * 2.0.
*/ */
import { NewAgentActionSchema } from '../../types/models';
import { import {
ElasticsearchClient, ElasticsearchClient,
KibanaResponseFactory, KibanaResponseFactory,
@ -17,13 +16,14 @@ import {
savedObjectsClientMock, savedObjectsClientMock,
httpServerMock, httpServerMock,
} from 'src/core/server/mocks'; } from 'src/core/server/mocks';
import { NewAgentActionSchema } from '../../types/models';
import { ActionsService } from '../../services/agents'; import { ActionsService } from '../../services/agents';
import { AgentAction } from '../../../common/types/models'; import { AgentAction } from '../../../common/types/models';
import { postNewAgentActionHandlerBuilder } from './actions_handlers';
import { import {
PostNewAgentActionRequest, PostNewAgentActionRequest,
PostNewAgentActionResponse, PostNewAgentActionResponse,
} from '../../../common/types/rest_spec'; } from '../../../common/types/rest_spec';
import { postNewAgentActionHandlerBuilder } from './actions_handlers';
describe('test actions handlers schema', () => { describe('test actions handlers schema', () => {
it('validate that new agent actions schema is valid', async () => { it('validate that new agent actions schema is valid', async () => {

View file

@ -34,6 +34,9 @@ import {
PostAgentUpgradeRequestSchema, PostAgentUpgradeRequestSchema,
PostBulkAgentUpgradeRequestSchema, PostBulkAgentUpgradeRequestSchema,
} from '../../types'; } from '../../types';
import * as AgentService from '../../services/agents';
import { appContextService } from '../../services';
import { FleetConfigType } from '../..';
import { import {
getAgentsHandler, getAgentsHandler,
getAgentHandler, getAgentHandler,
@ -47,11 +50,8 @@ import {
postBulkAgentsReassignHandler, postBulkAgentsReassignHandler,
} from './handlers'; } from './handlers';
import { postAgentAcksHandlerBuilder } from './acks_handlers'; import { postAgentAcksHandlerBuilder } from './acks_handlers';
import * as AgentService from '../../services/agents';
import { postNewAgentActionHandlerBuilder } from './actions_handlers'; import { postNewAgentActionHandlerBuilder } from './actions_handlers';
import { appContextService } from '../../services';
import { postAgentUnenrollHandler, postBulkAgentsUnenrollHandler } from './unenroll_handler'; import { postAgentUnenrollHandler, postBulkAgentsUnenrollHandler } from './unenroll_handler';
import { FleetConfigType } from '../..';
import { postAgentUpgradeHandler, postBulkAgentsUpgradeHandler } from './upgrade_handler'; import { postAgentUpgradeHandler, postBulkAgentsUpgradeHandler } from './upgrade_handler';
const ajv = new Ajv({ const ajv = new Ajv({

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import path from 'path';
import { TypeOf } from '@kbn/config-schema'; import { TypeOf } from '@kbn/config-schema';
import mime from 'mime-types'; import mime from 'mime-types';
import path from 'path';
import { RequestHandler, ResponseHeaders, KnownHeaders } from 'src/core/server'; import { RequestHandler, ResponseHeaders, KnownHeaders } from 'src/core/server';
import { import {
GetInfoResponse, GetInfoResponse,

View file

@ -7,6 +7,17 @@
import { IRouter } from 'src/core/server'; import { IRouter } from 'src/core/server';
import { PLUGIN_ID, EPM_API_ROUTES } from '../../constants'; import { PLUGIN_ID, EPM_API_ROUTES } from '../../constants';
import {
GetCategoriesRequestSchema,
GetPackagesRequestSchema,
GetFileRequestSchema,
GetInfoRequestSchema,
InstallPackageFromRegistryRequestSchema,
InstallPackageByUploadRequestSchema,
DeletePackageRequestSchema,
BulkUpgradePackagesFromRegistryRequestSchema,
GetStatsRequestSchema,
} from '../../types';
import { import {
getCategoriesHandler, getCategoriesHandler,
getListHandler, getListHandler,
@ -19,17 +30,6 @@ import {
bulkInstallPackagesFromRegistryHandler, bulkInstallPackagesFromRegistryHandler,
getStatsHandler, getStatsHandler,
} from './handlers'; } from './handlers';
import {
GetCategoriesRequestSchema,
GetPackagesRequestSchema,
GetFileRequestSchema,
GetInfoRequestSchema,
InstallPackageFromRegistryRequestSchema,
InstallPackageByUploadRequestSchema,
DeletePackageRequestSchema,
BulkUpgradePackagesFromRegistryRequestSchema,
GetStatsRequestSchema,
} from '../../types';
const MAX_FILE_SIZE_BYTES = 104857600; // 100MB const MAX_FILE_SIZE_BYTES = 104857600; // 100MB

View file

@ -6,12 +6,12 @@
*/ */
import { coreMock, httpServerMock, httpServiceMock } from 'src/core/server/mocks'; import { coreMock, httpServerMock, httpServiceMock } from 'src/core/server/mocks';
import { FleetConfigType } from '../index';
import { import {
createLimitedPreAuthHandler, createLimitedPreAuthHandler,
isLimitedRoute, isLimitedRoute,
registerLimitedConcurrencyRoutes, registerLimitedConcurrencyRoutes,
} from './limited_concurrency'; } from './limited_concurrency';
import { FleetConfigType } from '../index';
describe('registerLimitedConcurrencyRoutes', () => { describe('registerLimitedConcurrencyRoutes', () => {
test(`doesn't call registerOnPreAuth if maxConcurrentConnections is 0`, async () => { test(`doesn't call registerOnPreAuth if maxConcurrentConnections is 0`, async () => {

View file

@ -7,12 +7,12 @@
import { IRouter } from 'src/core/server'; import { IRouter } from 'src/core/server';
import { PLUGIN_ID, OUTPUT_API_ROUTES } from '../../constants'; import { PLUGIN_ID, OUTPUT_API_ROUTES } from '../../constants';
import { getOneOuputHandler, getOutputsHandler, putOuputHandler } from './handler';
import { import {
GetOneOutputRequestSchema, GetOneOutputRequestSchema,
GetOutputsRequestSchema, GetOutputsRequestSchema,
PutOutputRequestSchema, PutOutputRequestSchema,
} from '../../types'; } from '../../types';
import { getOneOuputHandler, getOutputsHandler, putOuputHandler } from './handler';
export const registerRoutes = (router: IRouter) => { export const registerRoutes = (router: IRouter) => {
router.get( router.get(

View file

@ -7,13 +7,13 @@
import { httpServerMock, httpServiceMock } from 'src/core/server/mocks'; import { httpServerMock, httpServiceMock } from 'src/core/server/mocks';
import { IRouter, KibanaRequest, RequestHandler, RouteConfig } from 'kibana/server'; import { IRouter, KibanaRequest, RequestHandler, RouteConfig } from 'kibana/server';
import { registerRoutes } from './index';
import { PACKAGE_POLICY_API_ROUTES } from '../../../common/constants'; import { PACKAGE_POLICY_API_ROUTES } from '../../../common/constants';
import { appContextService } from '../../services'; import { appContextService } from '../../services';
import { createAppContextStartContractMock, xpackMocks } from '../../mocks'; import { createAppContextStartContractMock, xpackMocks } from '../../mocks';
import { PackagePolicyServiceInterface, ExternalCallback } from '../..'; import { PackagePolicyServiceInterface, ExternalCallback } from '../..';
import { CreatePackagePolicyRequestSchema } from '../../types/rest_spec'; import { CreatePackagePolicyRequestSchema } from '../../types/rest_spec';
import { packagePolicyService } from '../../services'; import { packagePolicyService } from '../../services';
import { registerRoutes } from './index';
const packagePolicyServiceMock = packagePolicyService as jest.Mocked<PackagePolicyServiceInterface>; const packagePolicyServiceMock = packagePolicyService as jest.Mocked<PackagePolicyServiceInterface>;

View file

@ -9,9 +9,9 @@ import { httpServerMock } from 'src/core/server/mocks';
import { PostIngestSetupResponse } from '../../../common'; import { PostIngestSetupResponse } from '../../../common';
import { RegistryError } from '../../errors'; import { RegistryError } from '../../errors';
import { createAppContextStartContractMock, xpackMocks } from '../../mocks'; import { createAppContextStartContractMock, xpackMocks } from '../../mocks';
import { FleetSetupHandler } from './handlers';
import { appContextService } from '../../services/app_context'; import { appContextService } from '../../services/app_context';
import { setupIngestManager } from '../../services/setup'; import { setupIngestManager } from '../../services/setup';
import { FleetSetupHandler } from './handlers';
jest.mock('../../services/setup', () => { jest.mock('../../services/setup', () => {
return { return {

View file

@ -9,8 +9,8 @@ import { IRouter } from 'src/core/server';
import { PLUGIN_ID, AGENTS_SETUP_API_ROUTES, SETUP_API_ROUTE } from '../../constants'; import { PLUGIN_ID, AGENTS_SETUP_API_ROUTES, SETUP_API_ROUTE } from '../../constants';
import { FleetConfigType } from '../../../common'; import { FleetConfigType } from '../../../common';
import { getFleetStatusHandler, createFleetSetupHandler, FleetSetupHandler } from './handlers';
import { PostFleetSetupRequestSchema } from '../../types'; import { PostFleetSetupRequestSchema } from '../../types';
import { getFleetStatusHandler, createFleetSetupHandler, FleetSetupHandler } from './handlers';
export const registerFleetSetupRoute = (router: IRouter) => { export const registerFleetSetupRoute = (router: IRouter) => {
router.post( router.post(

View file

@ -7,11 +7,6 @@
import { SavedObjectsServiceSetup, SavedObjectsType } from 'kibana/server'; import { SavedObjectsServiceSetup, SavedObjectsType } from 'kibana/server';
import { EncryptedSavedObjectsPluginSetup } from '../../../encrypted_saved_objects/server'; import { EncryptedSavedObjectsPluginSetup } from '../../../encrypted_saved_objects/server';
import {
migratePackagePolicyToV7110,
migratePackagePolicyToV7120,
// @ts-expect-error
} from './security_solution';
import { import {
OUTPUT_SAVED_OBJECT_TYPE, OUTPUT_SAVED_OBJECT_TYPE,
AGENT_POLICY_SAVED_OBJECT_TYPE, AGENT_POLICY_SAVED_OBJECT_TYPE,
@ -24,6 +19,11 @@ import {
ENROLLMENT_API_KEYS_SAVED_OBJECT_TYPE, ENROLLMENT_API_KEYS_SAVED_OBJECT_TYPE,
GLOBAL_SETTINGS_SAVED_OBJECT_TYPE, GLOBAL_SETTINGS_SAVED_OBJECT_TYPE,
} from '../constants'; } from '../constants';
import {
migratePackagePolicyToV7110,
migratePackagePolicyToV7120,
// @ts-expect-error
} from './security_solution';
import { import {
migrateAgentToV7100, migrateAgentToV7100,
migrateAgentEventToV7100, migrateAgentEventToV7100,

View file

@ -6,9 +6,9 @@
*/ */
import { elasticsearchServiceMock, savedObjectsClientMock } from 'src/core/server/mocks'; import { elasticsearchServiceMock, savedObjectsClientMock } from 'src/core/server/mocks';
import type { AgentPolicy, NewAgentPolicy, Output } from '../types';
import { agentPolicyService } from './agent_policy'; import { agentPolicyService } from './agent_policy';
import { agentPolicyUpdateEventHandler } from './agent_policy_update'; import { agentPolicyUpdateEventHandler } from './agent_policy_update';
import type { AgentPolicy, NewAgentPolicy, Output } from '../types';
function getSavedObjectMock(agentPolicyAttributes: any) { function getSavedObjectMock(agentPolicyAttributes: any) {
const mock = savedObjectsClientMock.create(); const mock = savedObjectsClientMock.create();

View file

@ -42,13 +42,13 @@ import {
AgentPolicyDeletionError, AgentPolicyDeletionError,
IngestManagerError, IngestManagerError,
} from '../errors'; } from '../errors';
import { getFullAgentPolicyKibanaConfig } from '../../common/services/full_agent_policy_kibana_config';
import { createAgentPolicyAction, listAgents } from './agents'; import { createAgentPolicyAction, listAgents } from './agents';
import { packagePolicyService } from './package_policy'; import { packagePolicyService } from './package_policy';
import { outputService } from './output'; import { outputService } from './output';
import { agentPolicyUpdateEventHandler } from './agent_policy_update'; import { agentPolicyUpdateEventHandler } from './agent_policy_update';
import { getSettings } from './settings'; import { getSettings } from './settings';
import { normalizeKuery, escapeSearchQueryPhrase } from './saved_object'; import { normalizeKuery, escapeSearchQueryPhrase } from './saved_object';
import { getFullAgentPolicyKibanaConfig } from '../../common/services/full_agent_policy_kibana_config';
import { isAgentsSetup } from './agents/setup'; import { isAgentsSetup } from './agents/setup';
import { appContextService } from './app_context'; import { appContextService } from './app_context';

View file

@ -5,10 +5,10 @@
* 2.0. * 2.0.
*/ */
import { createAgentAction } from './actions';
import { SavedObject } from 'kibana/server'; import { SavedObject } from 'kibana/server';
import { AgentAction } from '../../../common/types/models';
import { savedObjectsClientMock, elasticsearchServiceMock } from 'src/core/server/mocks'; import { savedObjectsClientMock, elasticsearchServiceMock } from 'src/core/server/mocks';
import { AgentAction } from '../../../common/types/models';
import { createAgentAction } from './actions';
describe('test agent actions services', () => { describe('test agent actions services', () => {
it('should create a new action', async () => { it('should create a new action', async () => {

View file

@ -16,13 +16,13 @@ import {
FleetServerAgentAction, FleetServerAgentAction,
} from '../../../common/types/models'; } from '../../../common/types/models';
import { AGENT_ACTION_SAVED_OBJECT_TYPE, AGENT_ACTIONS_INDEX } from '../../../common/constants'; import { AGENT_ACTION_SAVED_OBJECT_TYPE, AGENT_ACTIONS_INDEX } from '../../../common/constants';
import { appContextService } from '../app_context';
import { nodeTypes } from '../../../../../../src/plugins/data/common';
import { import {
isAgentActionSavedObject, isAgentActionSavedObject,
isPolicyActionSavedObject, isPolicyActionSavedObject,
savedObjectToAgentAction, savedObjectToAgentAction,
} from './saved_objects'; } from './saved_objects';
import { appContextService } from '../app_context';
import { nodeTypes } from '../../../../../../src/plugins/data/common';
const ONE_MONTH_IN_MS = 2592000000; const ONE_MONTH_IN_MS = 2592000000;

View file

@ -20,9 +20,9 @@ import {
} from '../../../types'; } from '../../../types';
import { AGENT_EVENT_SAVED_OBJECT_TYPE } from '../../../constants'; import { AGENT_EVENT_SAVED_OBJECT_TYPE } from '../../../constants';
import { agentCheckinState } from './state';
import { getAgentActionsForCheckin } from '../actions'; import { getAgentActionsForCheckin } from '../actions';
import { updateAgent } from '../crud'; import { updateAgent } from '../crud';
import { agentCheckinState } from './state';
export async function agentCheckin( export async function agentCheckin(
soClient: SavedObjectsClientContract, soClient: SavedObjectsClientContract,

View file

@ -8,9 +8,9 @@
import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server'; import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server';
import { Agent } from '../../../types'; import { Agent } from '../../../types';
import { appContextService } from '../../app_context'; import { appContextService } from '../../app_context';
import { AGENT_UPDATE_LAST_CHECKIN_INTERVAL_MS } from '../../../constants';
import { agentCheckinStateConnectedAgentsFactory } from './state_connected_agents'; import { agentCheckinStateConnectedAgentsFactory } from './state_connected_agents';
import { agentCheckinStateNewActionsFactory } from './state_new_actions'; import { agentCheckinStateNewActionsFactory } from './state_new_actions';
import { AGENT_UPDATE_LAST_CHECKIN_INTERVAL_MS } from '../../../constants';
function agentCheckinStateFactory() { function agentCheckinStateFactory() {
const agentConnected = agentCheckinStateConnectedAgentsFactory(); const agentConnected = agentCheckinStateConnectedAgentsFactory();

View file

@ -8,13 +8,13 @@
import { ElasticsearchClient } from 'kibana/server'; import { ElasticsearchClient } from 'kibana/server';
import { savedObjectsClientMock } from 'src/core/server/mocks'; import { savedObjectsClientMock } from 'src/core/server/mocks';
import { take } from 'rxjs/operators'; import { take } from 'rxjs/operators';
import { getNewActionsSince } from '../actions';
import { Agent, AgentAction, AgentPolicyAction } from '../../../types';
import { outputType } from '../../../../common/constants';
import { import {
createAgentActionFromPolicyAction, createAgentActionFromPolicyAction,
createNewActionsSharedObservable, createNewActionsSharedObservable,
} from './state_new_actions'; } from './state_new_actions';
import { getNewActionsSince } from '../actions';
import { Agent, AgentAction, AgentPolicyAction } from '../../../types';
import { outputType } from '../../../../common/constants';
jest.mock('../../app_context', () => ({ jest.mock('../../app_context', () => ({
appContextService: { appContextService: {

View file

@ -44,8 +44,8 @@ import {
getAgentPolicyActionByIds, getAgentPolicyActionByIds,
} from '../actions'; } from '../actions';
import { appContextService } from '../../app_context'; import { appContextService } from '../../app_context';
import { toPromiseAbortable, AbortError, createRateLimiter } from './rxjs_utils';
import { getAgent, updateAgent } from '../crud'; import { getAgent, updateAgent } from '../crud';
import { toPromiseAbortable, AbortError, createRateLimiter } from './rxjs_utils';
function getInternalUserSOClient() { function getInternalUserSOClient() {
const fakeRequest = ({ const fakeRequest = ({

View file

@ -14,9 +14,9 @@ import { AGENT_SAVED_OBJECT_TYPE, AGENTS_INDEX } from '../../constants';
import { ESSearchHit } from '../../../../../typings/elasticsearch'; import { ESSearchHit } from '../../../../../typings/elasticsearch';
import { AgentSOAttributes, Agent, ListWithKuery } from '../../types'; import { AgentSOAttributes, Agent, ListWithKuery } from '../../types';
import { escapeSearchQueryPhrase, normalizeKuery } from '../saved_object'; import { escapeSearchQueryPhrase, normalizeKuery } from '../saved_object';
import { searchHitToAgent, agentSOAttributesToFleetServerAgentDoc } from './helpers';
import { appContextService } from '../../services'; import { appContextService } from '../../services';
import { esKuery, KueryNode } from '../../../../../../src/plugins/data/server'; import { esKuery, KueryNode } from '../../../../../../src/plugins/data/server';
import { searchHitToAgent, agentSOAttributesToFleetServerAgentDoc } from './helpers';
const ACTIVE_AGENT_CONDITION = 'active:true'; const ACTIVE_AGENT_CONDITION = 'active:true';
const INACTIVE_AGENT_CONDITION = `NOT (${ACTIVE_AGENT_CONDITION})`; const INACTIVE_AGENT_CONDITION = `NOT (${ACTIVE_AGENT_CONDITION})`;

View file

@ -12,9 +12,9 @@ import { isAgentUpgradeable } from '../../../common';
import { AGENT_SAVED_OBJECT_TYPE } from '../../constants'; import { AGENT_SAVED_OBJECT_TYPE } from '../../constants';
import { AgentSOAttributes, Agent, ListWithKuery } from '../../types'; import { AgentSOAttributes, Agent, ListWithKuery } from '../../types';
import { escapeSearchQueryPhrase, normalizeKuery, findAllSOs } from '../saved_object'; import { escapeSearchQueryPhrase, normalizeKuery, findAllSOs } from '../saved_object';
import { savedObjectToAgent } from './saved_objects';
import { appContextService } from '../../services'; import { appContextService } from '../../services';
import { esKuery, KueryNode } from '../../../../../../src/plugins/data/server'; import { esKuery, KueryNode } from '../../../../../../src/plugins/data/server';
import { savedObjectToAgent } from './saved_objects';
const ACTIVE_AGENT_CONDITION = `${AGENT_SAVED_OBJECT_TYPE}.attributes.active:true`; const ACTIVE_AGENT_CONDITION = `${AGENT_SAVED_OBJECT_TYPE}.attributes.active:true`;
const INACTIVE_AGENT_CONDITION = `NOT (${ACTIVE_AGENT_CONDITION})`; const INACTIVE_AGENT_CONDITION = `NOT (${ACTIVE_AGENT_CONDITION})`;

View file

@ -13,12 +13,12 @@ import semverLte from 'semver/functions/lte';
import type { SavedObjectsClientContract } from 'src/core/server'; import type { SavedObjectsClientContract } from 'src/core/server';
import type { AgentType, Agent, AgentSOAttributes, FleetServerAgent } from '../../types'; import type { AgentType, Agent, AgentSOAttributes, FleetServerAgent } from '../../types';
import { savedObjectToAgent } from './saved_objects';
import { AGENT_SAVED_OBJECT_TYPE, AGENTS_INDEX } from '../../constants'; import { AGENT_SAVED_OBJECT_TYPE, AGENTS_INDEX } from '../../constants';
import { IngestManagerError } from '../../errors'; import { IngestManagerError } from '../../errors';
import * as APIKeyService from '../api_keys'; import * as APIKeyService from '../api_keys';
import { agentPolicyService } from '../../services'; import { agentPolicyService } from '../../services';
import { appContextService } from '../app_context'; import { appContextService } from '../app_context';
import { savedObjectToAgent } from './saved_objects';
export async function enroll( export async function enroll(
soClient: SavedObjectsClientContract, soClient: SavedObjectsClientContract,

View file

@ -8,6 +8,7 @@
import type { SavedObjectsClientContract, ElasticsearchClient } from 'kibana/server'; import type { SavedObjectsClientContract, ElasticsearchClient } from 'kibana/server';
import Boom from '@hapi/boom'; import Boom from '@hapi/boom';
import { agentPolicyService } from '../agent_policy'; import { agentPolicyService } from '../agent_policy';
import { AgentReassignmentError } from '../../errors';
import { import {
getAgents, getAgents,
getAgentPolicyForAgent, getAgentPolicyForAgent,
@ -15,7 +16,6 @@ import {
updateAgent, updateAgent,
bulkUpdateAgents, bulkUpdateAgents,
} from './crud'; } from './crud';
import { AgentReassignmentError } from '../../errors';
import { createAgentAction, bulkCreateAgentActions } from './actions'; import { createAgentAction, bulkCreateAgentActions } from './actions';

View file

@ -6,10 +6,10 @@
*/ */
import { elasticsearchServiceMock, savedObjectsClientMock } from 'src/core/server/mocks'; import { elasticsearchServiceMock, savedObjectsClientMock } from 'src/core/server/mocks';
import { getAgentStatusById } from './status'; import { SavedObject } from 'kibana/server';
import { AGENT_TYPE_PERMANENT } from '../../../common/constants'; import { AGENT_TYPE_PERMANENT } from '../../../common/constants';
import { AgentSOAttributes } from '../../../common/types/models'; import { AgentSOAttributes } from '../../../common/types/models';
import { SavedObject } from 'kibana/server'; import { getAgentStatusById } from './status';
describe('Agent status service', () => { describe('Agent status service', () => {
it('should return inactive when agent is not active', async () => { it('should return inactive when agent is not active', async () => {

View file

@ -7,7 +7,6 @@
import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server'; import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server';
import pMap from 'p-map'; import pMap from 'p-map';
import { getAgent, listAgents } from './crud';
import { AGENT_EVENT_SAVED_OBJECT_TYPE, AGENT_SAVED_OBJECT_TYPE } from '../../constants'; import { AGENT_EVENT_SAVED_OBJECT_TYPE, AGENT_SAVED_OBJECT_TYPE } from '../../constants';
import { AgentStatus } from '../../types'; import { AgentStatus } from '../../types';
@ -15,6 +14,7 @@ import { AgentStatusKueryHelper } from '../../../common/services';
import { esKuery, KueryNode } from '../../../../../../src/plugins/data/server'; import { esKuery, KueryNode } from '../../../../../../src/plugins/data/server';
import { normalizeKuery } from '../saved_object'; import { normalizeKuery } from '../saved_object';
import { appContextService } from '../app_context'; import { appContextService } from '../app_context';
import { getAgent, listAgents } from './crud';
import { removeSOAttributes } from './crud_fleet_server'; import { removeSOAttributes } from './crud_fleet_server';
export async function getAgentStatusById( export async function getAgentStatusById(

View file

@ -7,6 +7,7 @@
import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server'; import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server';
import * as APIKeyService from '../api_keys'; import * as APIKeyService from '../api_keys';
import { AgentUnenrollmentError } from '../../errors';
import { createAgentAction, bulkCreateAgentActions } from './actions'; import { createAgentAction, bulkCreateAgentActions } from './actions';
import { import {
getAgent, getAgent,
@ -16,7 +17,6 @@ import {
listAllAgents, listAllAgents,
bulkUpdateAgents, bulkUpdateAgents,
} from './crud'; } from './crud';
import { AgentUnenrollmentError } from '../../errors';
async function unenrollAgentIsAllowed( async function unenrollAgentIsAllowed(
soClient: SavedObjectsClientContract, soClient: SavedObjectsClientContract,

View file

@ -6,8 +6,8 @@
*/ */
import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server'; import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server';
import { listAgents } from './crud';
import { AGENT_SAVED_OBJECT_TYPE } from '../../constants'; import { AGENT_SAVED_OBJECT_TYPE } from '../../constants';
import { listAgents } from './crud';
import { unenrollAgent } from './unenroll'; import { unenrollAgent } from './unenroll';
export async function unenrollForAgentPolicyId( export async function unenrollForAgentPolicyId(

View file

@ -10,6 +10,8 @@ import { AgentAction, AgentActionSOAttributes } from '../../types';
import { AGENT_ACTION_SAVED_OBJECT_TYPE } from '../../constants'; import { AGENT_ACTION_SAVED_OBJECT_TYPE } from '../../constants';
import { agentPolicyService } from '../../services'; import { agentPolicyService } from '../../services';
import { IngestManagerError } from '../../errors'; import { IngestManagerError } from '../../errors';
import { isAgentUpgradeable } from '../../../common/services';
import { appContextService } from '../app_context';
import { bulkCreateAgentActions, createAgentAction } from './actions'; import { bulkCreateAgentActions, createAgentAction } from './actions';
import { import {
getAgents, getAgents,
@ -18,8 +20,6 @@ import {
bulkUpdateAgents, bulkUpdateAgents,
getAgentPolicyForAgent, getAgentPolicyForAgent,
} from './crud'; } from './crud';
import { isAgentUpgradeable } from '../../../common/services';
import { appContextService } from '../app_context';
export async function sendUpgradeAgentAction({ export async function sendUpgradeAgentAction({
soClient, soClient,

View file

@ -13,9 +13,9 @@ import { SavedObjectsClientContract, ElasticsearchClient } from 'src/core/server
import { ESSearchResponse as SearchResponse } from '../../../../../typings/elasticsearch'; import { ESSearchResponse as SearchResponse } from '../../../../../typings/elasticsearch';
import { EnrollmentAPIKey, FleetServerEnrollmentAPIKey } from '../../types'; import { EnrollmentAPIKey, FleetServerEnrollmentAPIKey } from '../../types';
import { ENROLLMENT_API_KEYS_INDEX } from '../../constants'; import { ENROLLMENT_API_KEYS_INDEX } from '../../constants';
import { createAPIKey, invalidateAPIKeys } from './security';
import { agentPolicyService } from '../agent_policy'; import { agentPolicyService } from '../agent_policy';
import { escapeSearchQueryPhrase } from '../saved_object'; import { escapeSearchQueryPhrase } from '../saved_object';
import { createAPIKey, invalidateAPIKeys } from './security';
export async function listEnrollmentApiKeys( export async function listEnrollmentApiKeys(
esClient: ElasticsearchClient, esClient: ElasticsearchClient,

View file

@ -10,10 +10,10 @@ import Boom from '@hapi/boom';
import { SavedObjectsClientContract, SavedObject } from 'src/core/server'; import { SavedObjectsClientContract, SavedObject } from 'src/core/server';
import { EnrollmentAPIKey, EnrollmentAPIKeySOAttributes } from '../../types'; import { EnrollmentAPIKey, EnrollmentAPIKeySOAttributes } from '../../types';
import { ENROLLMENT_API_KEYS_SAVED_OBJECT_TYPE } from '../../constants'; import { ENROLLMENT_API_KEYS_SAVED_OBJECT_TYPE } from '../../constants';
import { createAPIKey, invalidateAPIKeys } from './security';
import { agentPolicyService } from '../agent_policy'; import { agentPolicyService } from '../agent_policy';
import { appContextService } from '../app_context'; import { appContextService } from '../app_context';
import { normalizeKuery, escapeSearchQueryPhrase } from '../saved_object'; import { normalizeKuery, escapeSearchQueryPhrase } from '../saved_object';
import { createAPIKey, invalidateAPIKeys } from './security';
export async function listEnrollmentApiKeys( export async function listEnrollmentApiKeys(
soClient: SavedObjectsClientContract, soClient: SavedObjectsClientContract,

View file

@ -5,8 +5,8 @@
* 2.0. * 2.0.
*/ */
import { ArchiveEntry } from './index';
import { ArchivePackage, RegistryPackage } from '../../../../common'; import { ArchivePackage, RegistryPackage } from '../../../../common';
import { ArchiveEntry } from './index';
const archiveEntryCache: Map<ArchiveEntry['path'], ArchiveEntry['buffer']> = new Map(); const archiveEntryCache: Map<ArchiveEntry['path'], ArchiveEntry['buffer']> = new Map();
export const getArchiveEntry = (key: string) => archiveEntryCache.get(key); export const getArchiveEntry = (key: string) => archiveEntryCache.get(key);

View file

@ -19,9 +19,9 @@ import {
PackageAssetReference, PackageAssetReference,
RegistryDataStream, RegistryDataStream,
} from '../../../../common'; } from '../../../../common';
import { pkgToPkgKey } from '../registry';
import { ArchiveEntry, getArchiveEntry, setArchiveEntry, setArchiveFilelist } from './index'; import { ArchiveEntry, getArchiveEntry, setArchiveEntry, setArchiveFilelist } from './index';
import { parseAndVerifyPolicyTemplates, parseAndVerifyStreams } from './validation'; import { parseAndVerifyPolicyTemplates, parseAndVerifyStreams } from './validation';
import { pkgToPkgKey } from '../registry';
// could be anything, picked this from https://github.com/elastic/elastic-agent-client/issues/17 // could be anything, picked this from https://github.com/elastic/elastic-agent-client/issues/17
const MAX_ES_ASSET_BYTES = 4 * 1024 * 1024; const MAX_ES_ASSET_BYTES = 4 * 1024 * 1024;

View file

@ -17,8 +17,8 @@ import {
PackageSpecManifest, PackageSpecManifest,
} from '../../../../common/types'; } from '../../../../common/types';
import { PackageInvalidArchiveError } from '../../../errors'; import { PackageInvalidArchiveError } from '../../../errors';
import { unpackBufferEntries } from './index';
import { pkgToPkgKey } from '../registry'; import { pkgToPkgKey } from '../registry';
import { unpackBufferEntries } from './index';
const MANIFESTS: Record<string, Buffer> = {}; const MANIFESTS: Record<string, Buffer> = {};
const MANIFEST_NAME = 'manifest.yml'; const MANIFEST_NAME = 'manifest.yml';

View file

@ -14,9 +14,9 @@ import {
} from '../../../../../common/types/models'; } from '../../../../../common/types/models';
import { CallESAsCurrentUser } from '../../../../types'; import { CallESAsCurrentUser } from '../../../../types';
import { getInstallation } from '../../packages'; import { getInstallation } from '../../packages';
import { deleteIlmRefs, deleteIlms } from './remove';
import { saveInstalledEsRefs } from '../../packages/install'; import { saveInstalledEsRefs } from '../../packages/install';
import { getAsset } from '../transform/common'; import { getAsset } from '../transform/common';
import { deleteIlmRefs, deleteIlms } from './remove';
interface IlmInstallation { interface IlmInstallation {
installationName: string; installationName: string;

View file

@ -7,8 +7,8 @@
import { readFileSync } from 'fs'; import { readFileSync } from 'fs';
import path from 'path'; import path from 'path';
import { rewriteIngestPipeline, getPipelineNameForInstallation } from './install';
import { RegistryDataStream } from '../../../../types'; import { RegistryDataStream } from '../../../../types';
import { rewriteIngestPipeline, getPipelineNameForInstallation } from './install';
test('a json-format pipeline with pipeline references is correctly rewritten', () => { test('a json-format pipeline with pipeline references is correctly rewritten', () => {
const inputStandard = readFileSync( const inputStandard = readFileSync(

View file

@ -5,10 +5,10 @@
* 2.0. * 2.0.
*/ */
import { elasticsearchServiceMock } from 'src/core/server/mocks';
import { RegistryDataStream } from '../../../../types'; import { RegistryDataStream } from '../../../../types';
import { Field } from '../../fields/field'; import { Field } from '../../fields/field';
import { elasticsearchServiceMock } from 'src/core/server/mocks';
import { installTemplate } from './install'; import { installTemplate } from './install';
test('tests installPackage to use correct priority and index_patterns for data stream with dataset_is_prefix not set', async () => { test('tests installPackage to use correct priority and index_patterns for data stream with dataset_is_prefix not set', async () => {

View file

@ -17,6 +17,8 @@ import {
import { CallESAsCurrentUser } from '../../../../types'; import { CallESAsCurrentUser } from '../../../../types';
import { Field, loadFieldsFromYaml, processFields } from '../../fields/field'; import { Field, loadFieldsFromYaml, processFields } from '../../fields/field';
import { getPipelineNameForInstallation } from '../ingest_pipeline/install'; import { getPipelineNameForInstallation } from '../ingest_pipeline/install';
import { getAsset, getPathParts } from '../../archive';
import { removeAssetsFromInstalledEsByType, saveInstalledEsRefs } from '../../packages/install';
import { import {
generateMappings, generateMappings,
generateTemplateName, generateTemplateName,
@ -24,8 +26,6 @@ import {
getTemplate, getTemplate,
getTemplatePriority, getTemplatePriority,
} from './template'; } from './template';
import { getAsset, getPathParts } from '../../archive';
import { removeAssetsFromInstalledEsByType, saveInstalledEsRefs } from '../../packages/install';
export const installTemplates = async ( export const installTemplates = async (
installablePackage: InstallablePackage, installablePackage: InstallablePackage,

View file

@ -6,8 +6,8 @@
*/ */
import { readFileSync } from 'fs'; import { readFileSync } from 'fs';
import { safeLoad } from 'js-yaml';
import path from 'path'; import path from 'path';
import { safeLoad } from 'js-yaml';
import { RegistryDataStream } from '../../../../types'; import { RegistryDataStream } from '../../../../types';
import { Field, processFields } from '../../fields/field'; import { Field, processFields } from '../../fields/field';
import { import {

View file

@ -16,10 +16,10 @@ import {
} from '../../../../../common/types/models'; } from '../../../../../common/types/models';
import { CallESAsCurrentUser } from '../../../../types'; import { CallESAsCurrentUser } from '../../../../types';
import { getInstallation } from '../../packages'; import { getInstallation } from '../../packages';
import { deleteTransforms, deleteTransformRefs } from './remove';
import { getAsset } from './common';
import { appContextService } from '../../../app_context'; import { appContextService } from '../../../app_context';
import { isLegacyESClientError } from '../../../../errors'; import { isLegacyESClientError } from '../../../../errors';
import { deleteTransforms, deleteTransformRefs } from './remove';
import { getAsset } from './common';
interface TransformInstallation { interface TransformInstallation {
installationName: string; installationName: string;

View file

@ -8,8 +8,8 @@
import { SavedObjectsClientContract } from 'kibana/server'; import { SavedObjectsClientContract } from 'kibana/server';
// eslint-disable-next-line @kbn/eslint/no-restricted-paths // eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { savedObjectsClientMock } from '../../../../../../../../src/core/server/saved_objects/service/saved_objects_client.mock'; import { savedObjectsClientMock } from '../../../../../../../../src/core/server/saved_objects/service/saved_objects_client.mock';
import { deleteTransformRefs } from './remove';
import { EsAssetReference } from '../../../../../common/types/models'; import { EsAssetReference } from '../../../../../common/types/models';
import { deleteTransformRefs } from './remove';
describe('test transform install', () => { describe('test transform install', () => {
let savedObjectsClient: jest.Mocked<SavedObjectsClientContract>; let savedObjectsClient: jest.Mocked<SavedObjectsClientContract>;

View file

@ -5,6 +5,7 @@
* 2.0. * 2.0.
*/ */
// eslint-disable-next-line import/order
import { createAppContextStartContractMock } from '../../../../mocks'; import { createAppContextStartContractMock } from '../../../../mocks';
jest.mock('../../packages/get', () => { jest.mock('../../packages/get', () => {
@ -18,14 +19,14 @@ jest.mock('./common', () => {
}); });
import { errors as LegacyESErrors } from 'elasticsearch'; import { errors as LegacyESErrors } from 'elasticsearch';
import { installTransform } from './install';
import { ILegacyScopedClusterClient, SavedObject, SavedObjectsClientContract } from 'kibana/server'; import { ILegacyScopedClusterClient, SavedObject, SavedObjectsClientContract } from 'kibana/server';
import { ElasticsearchAssetType, Installation, RegistryPackage } from '../../../../types'; import { ElasticsearchAssetType, Installation, RegistryPackage } from '../../../../types';
import { getInstallation, getInstallationObject } from '../../packages'; import { getInstallation, getInstallationObject } from '../../packages';
import { getAsset } from './common';
// eslint-disable-next-line @kbn/eslint/no-restricted-paths // eslint-disable-next-line @kbn/eslint/no-restricted-paths
import { savedObjectsClientMock } from '../../../../../../../../src/core/server/saved_objects/service/saved_objects_client.mock'; import { savedObjectsClientMock } from '../../../../../../../../src/core/server/saved_objects/service/saved_objects_client.mock';
import { appContextService } from '../../../app_context'; import { appContextService } from '../../../app_context';
import { getAsset } from './common';
import { installTransform } from './install';
describe('test transform install', () => { describe('test transform install', () => {
let legacyScopedClusterClient: jest.Mocked<ILegacyScopedClusterClient>; let legacyScopedClusterClient: jest.Mocked<ILegacyScopedClusterClient>;

View file

@ -6,9 +6,9 @@
*/ */
import { readFileSync } from 'fs'; import { readFileSync } from 'fs';
import path from 'path';
import glob from 'glob'; import glob from 'glob';
import { safeLoad } from 'js-yaml'; import { safeLoad } from 'js-yaml';
import path from 'path';
import { Field, Fields, getField, processFields } from './field'; import { Field, Fields, getField, processFields } from './field';
// Add our own serialiser to just do JSON.stringify // Add our own serialiser to just do JSON.stringify

View file

@ -9,6 +9,7 @@ import path from 'path';
import { readFileSync } from 'fs'; import { readFileSync } from 'fs';
import glob from 'glob'; import glob from 'glob';
import { safeLoad } from 'js-yaml'; import { safeLoad } from 'js-yaml';
import { Fields, Field } from '../../fields/field';
import { import {
flattenFields, flattenFields,
dedupeFields, dedupeFields,
@ -19,7 +20,6 @@ import {
createIndexPatternFields, createIndexPatternFields,
createIndexPattern, createIndexPattern,
} from './install'; } from './install';
import { Fields, Field } from '../../fields/field';
import { dupeFields } from './tests/test_data'; import { dupeFields } from './tests/test_data';
// Add our own serialiser to just do JSON.stringify // Add our own serialiser to just do JSON.stringify

View file

@ -27,12 +27,12 @@ import { installPipelines, deletePreviousPipelines } from '../elasticsearch/inge
import { installILMPolicy } from '../elasticsearch/ilm/install'; import { installILMPolicy } from '../elasticsearch/ilm/install';
import { installKibanaAssets, getKibanaAssets } from '../kibana/assets/install'; import { installKibanaAssets, getKibanaAssets } from '../kibana/assets/install';
import { updateCurrentWriteIndices } from '../elasticsearch/template/template'; import { updateCurrentWriteIndices } from '../elasticsearch/template/template';
import { deleteKibanaSavedObjectsAssets } from './remove';
import { installTransform } from '../elasticsearch/transform/install'; import { installTransform } from '../elasticsearch/transform/install';
import { createInstallation, saveKibanaAssetsRefs, updateVersion } from './install';
import { installIlmForDataStream } from '../elasticsearch/datastream_ilm/install'; import { installIlmForDataStream } from '../elasticsearch/datastream_ilm/install';
import { saveArchiveEntries } from '../archive/storage'; import { saveArchiveEntries } from '../archive/storage';
import { ConcurrentInstallOperationError } from '../../../errors'; import { ConcurrentInstallOperationError } from '../../../errors';
import { createInstallation, saveKibanaAssetsRefs, updateVersion } from './install';
import { deleteKibanaSavedObjectsAssets } from './remove';
// this is only exported for testing // this is only exported for testing
// use a leading underscore to indicate it's not the supported path // use a leading underscore to indicate it's not the supported path

View file

@ -6,8 +6,8 @@
*/ */
import { InstallablePackage } from '../../../types'; import { InstallablePackage } from '../../../types';
import { getAssets } from './assets';
import { getArchiveFilelist } from '../archive/cache'; import { getArchiveFilelist } from '../archive/cache';
import { getAssets } from './assets';
jest.mock('../archive/cache', () => { jest.mock('../archive/cache', () => {
return { return {

View file

@ -5,6 +5,7 @@
* 2.0. * 2.0.
*/ */
// eslint-disable-next-line import/order
import { ElasticsearchAssetType, Installation, KibanaSavedObjectType } from '../../../types'; import { ElasticsearchAssetType, Installation, KibanaSavedObjectType } from '../../../types';
import { SavedObject, SavedObjectsClientContract } from 'src/core/server'; import { SavedObject, SavedObjectsClientContract } from 'src/core/server';
@ -12,15 +13,15 @@ jest.mock('./install');
jest.mock('./bulk_install_packages'); jest.mock('./bulk_install_packages');
jest.mock('./get'); jest.mock('./get');
import { bulkInstallPackages, isBulkInstallError } from './bulk_install_packages';
const { ensureInstalledDefaultPackages } = jest.requireActual('./install'); const { ensureInstalledDefaultPackages } = jest.requireActual('./install');
const { isBulkInstallError: actualIsBulkInstallError } = jest.requireActual( const { isBulkInstallError: actualIsBulkInstallError } = jest.requireActual(
'./bulk_install_packages' './bulk_install_packages'
); );
import { getInstallation } from './get';
import { savedObjectsClientMock } from 'src/core/server/mocks'; import { savedObjectsClientMock } from 'src/core/server/mocks';
import { appContextService } from '../../app_context'; import { appContextService } from '../../app_context';
import { createAppContextStartContractMock } from '../../../mocks'; import { createAppContextStartContractMock } from '../../../mocks';
import { getInstallation } from './get';
import { bulkInstallPackages, isBulkInstallError } from './bulk_install_packages';
// if we add this assertion, TS will type check the return value // if we add this assertion, TS will type check the return value
// and the editor will also know about .mockImplementation, .mock.calls, etc // and the editor will also know about .mockImplementation, .mock.calls, etc

View file

@ -18,10 +18,10 @@ import { ArchivePackage, RegistryPackage, EpmPackageAdditions } from '../../../.
import { Installation, PackageInfo, KibanaAssetType } from '../../../types'; import { Installation, PackageInfo, KibanaAssetType } from '../../../types';
import { IngestManagerError } from '../../../errors'; import { IngestManagerError } from '../../../errors';
import * as Registry from '../registry'; import * as Registry from '../registry';
import { createInstallableFrom, isRequiredPackage } from './index';
import { getEsPackage } from '../archive/storage'; import { getEsPackage } from '../archive/storage';
import { getArchivePackage } from '../archive'; import { getArchivePackage } from '../archive';
import { normalizeKuery } from '../../saved_object'; import { normalizeKuery } from '../../saved_object';
import { createInstallableFrom, isRequiredPackage } from './index';
export { getFile, SearchParams } from '../registry'; export { getFile, SearchParams } from '../registry';

View file

@ -11,7 +11,6 @@ import Boom from '@hapi/boom';
import { UnwrapPromise } from '@kbn/utility-types'; import { UnwrapPromise } from '@kbn/utility-types';
import { SavedObject, SavedObjectsClientContract } from 'src/core/server'; import { SavedObject, SavedObjectsClientContract } from 'src/core/server';
import { generateESIndexPatterns } from '../elasticsearch/template/template'; import { generateESIndexPatterns } from '../elasticsearch/template/template';
import { isRequiredPackage } from './index';
import { import {
BulkInstallPackageInfo, BulkInstallPackageInfo,
InstallablePackage, InstallablePackage,
@ -30,21 +29,22 @@ import {
} from '../../../types'; } from '../../../types';
import * as Registry from '../registry'; import * as Registry from '../registry';
import { setPackageInfo, parseAndVerifyArchiveEntries, unpackBufferToCache } from '../archive'; import { setPackageInfo, parseAndVerifyArchiveEntries, unpackBufferToCache } from '../archive';
import { toAssetReference, ArchiveAsset } from '../kibana/assets/install';
import {
IngestManagerError,
PackageOperationNotSupportedError,
PackageOutdatedError,
} from '../../../errors';
import { appContextService } from '../../app_context';
import { import {
getInstallation, getInstallation,
getInstallationObject, getInstallationObject,
bulkInstallPackages, bulkInstallPackages,
isBulkInstallError, isBulkInstallError,
} from './index'; } from './index';
import { toAssetReference, ArchiveAsset } from '../kibana/assets/install';
import { removeInstallation } from './remove'; import { removeInstallation } from './remove';
import {
IngestManagerError,
PackageOperationNotSupportedError,
PackageOutdatedError,
} from '../../../errors';
import { getPackageSavedObjects } from './get'; import { getPackageSavedObjects } from './get';
import { appContextService } from '../../app_context'; import { isRequiredPackage } from './index';
import { _installPackage } from './_install_package'; import { _installPackage } from './_install_package';
export async function installLatestPackage(options: { export async function installLatestPackage(options: {

View file

@ -17,7 +17,6 @@ import {
KibanaAssetReference, KibanaAssetReference,
Installation, Installation,
} from '../../../types'; } from '../../../types';
import { getInstallation, savedObjectTypes } from './index';
import { deletePipeline } from '../elasticsearch/ingest_pipeline/'; import { deletePipeline } from '../elasticsearch/ingest_pipeline/';
import { installIndexPatterns } from '../kibana/index_pattern/install'; import { installIndexPatterns } from '../kibana/index_pattern/install';
import { deleteTransforms } from '../elasticsearch/transform/remove'; import { deleteTransforms } from '../elasticsearch/transform/remove';
@ -26,6 +25,7 @@ import { splitPkgKey } from '../registry';
import { deletePackageCache } from '../archive'; import { deletePackageCache } from '../archive';
import { deleteIlms } from '../elasticsearch/datastream_ilm/remove'; import { deleteIlms } from '../elasticsearch/datastream_ilm/remove';
import { removeArchiveEntries } from '../archive/storage'; import { removeArchiveEntries } from '../archive/storage';
import { getInstallation, savedObjectTypes } from './index';
export async function removeInstallation(options: { export async function removeInstallation(options: {
savedObjectsClient: SavedObjectsClientContract; savedObjectsClient: SavedObjectsClientContract;

View file

@ -5,10 +5,10 @@
* 2.0. * 2.0.
*/ */
import { URL } from 'url';
import mime from 'mime-types'; import mime from 'mime-types';
import semverValid from 'semver/functions/valid'; import semverValid from 'semver/functions/valid';
import { Response } from 'node-fetch'; import { Response } from 'node-fetch';
import { URL } from 'url';
import { import {
AssetsGroupedByServiceByType, AssetsGroupedByServiceByType,
CategoryId, CategoryId,
@ -26,11 +26,11 @@ import {
getPackageInfo, getPackageInfo,
setPackageInfo, setPackageInfo,
} from '../archive'; } from '../archive';
import { fetchUrl, getResponse, getResponseStream } from './requests';
import { streamToBuffer } from '../streams'; import { streamToBuffer } from '../streams';
import { getRegistryUrl } from './registry_url';
import { appContextService } from '../..'; import { appContextService } from '../..';
import { PackageNotFoundError, PackageCacheError } from '../../../errors'; import { PackageNotFoundError, PackageCacheError } from '../../../errors';
import { fetchUrl, getResponse, getResponseStream } from './requests';
import { getRegistryUrl } from './registry_url';
export interface SearchParams { export interface SearchParams {
category?: CategoryId; category?: CategoryId;

View file

@ -5,8 +5,8 @@
* 2.0. * 2.0.
*/ */
import { fetchUrl } from './requests';
import { RegistryError, RegistryConnectionError, RegistryResponseError } from '../../../errors'; import { RegistryError, RegistryConnectionError, RegistryResponseError } from '../../../errors';
import { fetchUrl } from './requests';
jest.mock('node-fetch'); jest.mock('node-fetch');
const { Response, FetchError } = jest.requireActual('node-fetch'); const { Response, FetchError } = jest.requireActual('node-fetch');

View file

@ -6,8 +6,8 @@
*/ */
import { SavedObjectsClientContract } from 'kibana/server'; import { SavedObjectsClientContract } from 'kibana/server';
import { getInstallation } from './epm/packages';
import { ESIndexPatternService } from '../../server'; import { ESIndexPatternService } from '../../server';
import { getInstallation } from './epm/packages';
export class ESIndexPatternSavedObjectService implements ESIndexPatternService { export class ESIndexPatternSavedObjectService implements ESIndexPatternService {
public async getESIndexPattern( public async getESIndexPattern(

View file

@ -7,6 +7,7 @@
import { elasticsearchServiceMock } from 'src/core/server/mocks'; import { elasticsearchServiceMock } from 'src/core/server/mocks';
import hash from 'object-hash'; import hash from 'object-hash';
import { FLEET_SERVER_INDICES } from '../../../common';
import { setupFleetServerIndexes } from './elastic_index'; import { setupFleetServerIndexes } from './elastic_index';
import ESFleetAgentIndex from './elasticsearch/fleet_agents.json'; import ESFleetAgentIndex from './elasticsearch/fleet_agents.json';
import ESFleetPoliciesIndex from './elasticsearch/fleet_policies.json'; import ESFleetPoliciesIndex from './elasticsearch/fleet_policies.json';
@ -15,7 +16,6 @@ import ESFleetServersIndex from './elasticsearch/fleet_servers.json';
import ESFleetEnrollmentApiKeysIndex from './elasticsearch/fleet_enrollment_api_keys.json'; import ESFleetEnrollmentApiKeysIndex from './elasticsearch/fleet_enrollment_api_keys.json';
import EsFleetActionsIndex from './elasticsearch/fleet_actions.json'; import EsFleetActionsIndex from './elasticsearch/fleet_actions.json';
import EsFleetArtifactsIndex from './elasticsearch/fleet_artifacts.json'; import EsFleetArtifactsIndex from './elasticsearch/fleet_artifacts.json';
import { FLEET_SERVER_INDICES } from '../../../common';
const FLEET_INDEXES_MIGRATION_HASH: Record<typeof FLEET_SERVER_INDICES[number], string> = { const FLEET_INDEXES_MIGRATION_HASH: Record<typeof FLEET_SERVER_INDICES[number], string> = {
'.fleet-actions': hash(EsFleetActionsIndex), '.fleet-actions': hash(EsFleetActionsIndex),

View file

@ -8,8 +8,8 @@
import { SavedObjectsClientContract } from 'src/core/server'; import { SavedObjectsClientContract } from 'src/core/server';
import { NewOutput, Output, OutputSOAttributes } from '../types'; import { NewOutput, Output, OutputSOAttributes } from '../types';
import { DEFAULT_OUTPUT, OUTPUT_SAVED_OBJECT_TYPE } from '../constants'; import { DEFAULT_OUTPUT, OUTPUT_SAVED_OBJECT_TYPE } from '../constants';
import { appContextService } from './app_context';
import { decodeCloudId } from '../../common'; import { decodeCloudId } from '../../common';
import { appContextService } from './app_context';
const SAVED_OBJECT_TYPE = OUTPUT_SAVED_OBJECT_TYPE; const SAVED_OBJECT_TYPE = OUTPUT_SAVED_OBJECT_TYPE;

View file

@ -6,15 +6,15 @@
*/ */
import { elasticsearchServiceMock, savedObjectsClientMock } from 'src/core/server/mocks'; import { elasticsearchServiceMock, savedObjectsClientMock } from 'src/core/server/mocks';
import { createPackagePolicyMock } from '../../common/mocks';
import { packagePolicyService } from './package_policy';
import { PackageInfo, PackagePolicySOAttributes } from '../types';
import { SavedObjectsUpdateResponse } from 'src/core/server'; import { SavedObjectsUpdateResponse } from 'src/core/server';
import { httpServerMock } from 'src/core/server/mocks'; import { httpServerMock } from 'src/core/server/mocks';
import { KibanaRequest } from 'kibana/server'; import { KibanaRequest } from 'kibana/server';
import { PackageInfo, PackagePolicySOAttributes } from '../types';
import { createPackagePolicyMock } from '../../common/mocks';
import { ExternalCallback } from '..'; import { ExternalCallback } from '..';
import { appContextService } from './app_context';
import { createAppContextStartContractMock, xpackMocks } from '../mocks'; import { createAppContextStartContractMock, xpackMocks } from '../mocks';
import { packagePolicyService } from './package_policy';
import { appContextService } from './app_context';
async function mockedGetAssetsData(_a: any, _b: any, dataset: string) { async function mockedGetAssetsData(_a: any, _b: any, dataset: string) {
if (dataset === 'dataset1') { if (dataset === 'dataset1') {

View file

@ -37,6 +37,7 @@ import {
NewPackagePolicySchema, NewPackagePolicySchema,
UpdatePackagePolicySchema, UpdatePackagePolicySchema,
} from '../types'; } from '../types';
import { ExternalCallback } from '..';
import { agentPolicyService } from './agent_policy'; import { agentPolicyService } from './agent_policy';
import { outputService } from './output'; import { outputService } from './output';
import * as Registry from './epm/registry'; import * as Registry from './epm/registry';
@ -45,7 +46,6 @@ import { getAssetsData } from './epm/packages/assets';
import { compileTemplate } from './epm/agent/agent'; import { compileTemplate } from './epm/agent/agent';
import { normalizeKuery } from './saved_object'; import { normalizeKuery } from './saved_object';
import { appContextService } from '.'; import { appContextService } from '.';
import { ExternalCallback } from '..';
const SAVED_OBJECT_TYPE = PACKAGE_POLICY_SAVED_OBJECT_TYPE; const SAVED_OBJECT_TYPE = PACKAGE_POLICY_SAVED_OBJECT_TYPE;

View file

@ -5,9 +5,9 @@
* 2.0. * 2.0.
*/ */
import url from 'url';
import Boom from '@hapi/boom'; import Boom from '@hapi/boom';
import { SavedObjectsClientContract } from 'kibana/server'; import { SavedObjectsClientContract } from 'kibana/server';
import url from 'url';
import { import {
GLOBAL_SETTINGS_SAVED_OBJECT_TYPE, GLOBAL_SETTINGS_SAVED_OBJECT_TYPE,
SettingsSOAttributes, SettingsSOAttributes,

View file

@ -8,13 +8,6 @@
import uuid from 'uuid'; import uuid from 'uuid';
import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server'; import { ElasticsearchClient, SavedObjectsClientContract } from 'src/core/server';
import { CallESAsCurrentUser } from '../types'; import { CallESAsCurrentUser } from '../types';
import { agentPolicyService } from './agent_policy';
import { outputService } from './output';
import {
ensureInstalledDefaultPackages,
ensureInstalledPackage,
ensurePackagesCompletedInstall,
} from './epm/packages/install';
import { import {
packageToPackagePolicy, packageToPackagePolicy,
PackagePolicy, PackagePolicy,
@ -25,6 +18,13 @@ import {
FLEET_SERVER_PACKAGE, FLEET_SERVER_PACKAGE,
} from '../../common'; } from '../../common';
import { SO_SEARCH_LIMIT } from '../constants'; import { SO_SEARCH_LIMIT } from '../constants';
import { agentPolicyService } from './agent_policy';
import { outputService } from './output';
import {
ensureInstalledDefaultPackages,
ensureInstalledPackage,
ensurePackagesCompletedInstall,
} from './epm/packages/install';
import { getPackageInfo } from './epm/packages'; import { getPackageInfo } from './epm/packages';
import { packagePolicyService } from './package_policy'; import { packagePolicyService } from './package_policy';
import { generateEnrollmentAPIKey } from './api_keys'; import { generateEnrollmentAPIKey } from './api_keys';

View file

@ -6,8 +6,8 @@
*/ */
import { schema } from '@kbn/config-schema'; import { schema } from '@kbn/config-schema';
import { PackagePolicySchema, NamespaceSchema } from './package_policy';
import { agentPolicyStatuses, dataTypes } from '../../../common'; import { agentPolicyStatuses, dataTypes } from '../../../common';
import { PackagePolicySchema, NamespaceSchema } from './package_policy';
const AgentPolicyBaseSchema = { const AgentPolicyBaseSchema = {
name: schema.string({ minLength: 1 }), name: schema.string({ minLength: 1 }),