Skip to content
4 changes: 4 additions & 0 deletions x-pack/platform/plugins/shared/fleet/common/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,10 @@ export interface FleetConfigType {
ca?: string;
};
};
deploymentSecrets?: {
fleetAppToken?: string;
elasticsearchAppToken?: string;
};
customIntegrations?: {
enabled?: boolean;
};
Expand Down
6 changes: 6 additions & 0 deletions x-pack/platform/plugins/shared/fleet/server/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,12 @@ export const config: PluginConfigDescriptor = {
),
})
),
deploymentSecrets: schema.maybe(
schema.object({
fleetAppToken: schema.maybe(schema.string()),
elasticsearchAppToken: schema.maybe(schema.string()),
})
),
customIntegrations: schema.maybe(
schema.object({
enabled: schema.maybe(schema.boolean({ defaultValue: false })),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import {
} from '../../../common/types';

import { appContextService } from '../app_context';
import { agentPolicyService } from '../agent_policy';
import { listEnrollmentApiKeys } from '../api_keys';
import { fleetServerHostService } from '../fleet_server_host';

Expand Down Expand Up @@ -92,6 +93,9 @@ describe('Agentless Agent service', () => {
mockedAppContextService.getLogger.mockReturnValue(mockedLogger);
mockedAppContextService.getExperimentalFeatures.mockReturnValue({ agentless: false } as any);
(axios as jest.MockedFunction<typeof axios>).mockReset();
jest.spyOn(agentPolicyService, 'getFullAgentPolicy').mockResolvedValue({
outputs: { agentless: {} as any },
} as any);
jest.clearAllMocks();
});

Expand All @@ -117,6 +121,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -185,6 +193,13 @@ describe('Agentless Agent service', () => {
team: 'fleet',
},
},
secrets: {
fleet_app_token: 'fleet-app-token',
elasticsearch_app_token: 'es-app-token',
},
policy_details: {
output_name: 'agentless',
},
}),
headers: expect.anything(),
httpsAgent: expect.anything(),
Expand Down Expand Up @@ -212,6 +227,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest
Expand Down Expand Up @@ -270,7 +289,7 @@ describe('Agentless Agent service', () => {
expect(createAgentlessAgentReturnValue).toEqual(mockAgentlessDeploymentResponse);
expect(axios).toHaveBeenCalledWith(
expect.objectContaining({
data: {
data: expect.objectContaining({
fleet_token: 'mocked-fleet-enrollment-api-key',
fleet_url: 'http://fleetserver:8220',
policy_id: 'mocked-agentless-agent-policy-id',
Expand All @@ -281,7 +300,14 @@ describe('Agentless Agent service', () => {
team: 'fleet',
},
},
},
secrets: {
fleet_app_token: 'fleet-app-token',
elasticsearch_app_token: 'es-app-token',
},
policy_details: {
output_name: 'agentless',
},
}),
headers: expect.anything(),
httpsAgent: expect.anything(),
method: 'POST',
Expand All @@ -308,6 +334,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest
Expand Down Expand Up @@ -374,7 +404,7 @@ describe('Agentless Agent service', () => {
expect(createAgentlessAgentReturnValue).toEqual(mockAgentlessDeploymentResponse);
expect(axios).toHaveBeenCalledWith(
expect.objectContaining({
data: {
data: expect.objectContaining({
fleet_token: 'mocked-fleet-enrollment-api-key',
fleet_url: 'http://fleetserver:8220',
policy_id: 'mocked-agentless-agent-policy-id',
Expand All @@ -391,7 +421,14 @@ describe('Agentless Agent service', () => {
team: 'fleet',
},
},
},
secrets: {
fleet_app_token: 'fleet-app-token',
elasticsearch_app_token: 'es-app-token',
},
policy_details: {
output_name: 'agentless',
},
}),
headers: expect.anything(),
httpsAgent: expect.anything(),
method: 'POST',
Expand All @@ -418,6 +455,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest
Expand Down Expand Up @@ -488,7 +529,7 @@ describe('Agentless Agent service', () => {
expect(createAgentlessAgentReturnValue).toEqual(mockAgentlessDeploymentResponse);
expect(axios).toHaveBeenCalledWith(
expect.objectContaining({
data: {
data: expect.objectContaining({
fleet_token: 'mocked-fleet-enrollment-api-key',
fleet_url: 'http://fleetserver:8220',
policy_id: 'mocked-agentless-agent-policy-id',
Expand All @@ -509,7 +550,14 @@ describe('Agentless Agent service', () => {
team: 'fleet',
},
},
},
secrets: {
fleet_app_token: 'fleet-app-token',
elasticsearch_app_token: 'es-app-token',
},
policy_details: {
output_name: 'agentless',
},
}),
headers: expect.anything(),
httpsAgent: expect.anything(),
method: 'POST',
Expand All @@ -536,6 +584,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -609,6 +661,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -644,6 +700,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getKibanaVersion').mockReturnValue('8.18.0');
Expand Down Expand Up @@ -683,6 +743,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest
Expand Down Expand Up @@ -723,6 +787,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -840,6 +908,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -904,6 +976,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -964,6 +1040,10 @@ describe('Agentless Agent service', () => {
key: '/path/to/key',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);

Expand Down Expand Up @@ -998,6 +1078,10 @@ describe('Agentless Agent service', () => {
key: '/path/to/key',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
await expect(
Expand Down Expand Up @@ -1047,6 +1131,10 @@ describe('Agentless Agent service', () => {
key: '/path/to/key',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1085,6 +1173,10 @@ describe('Agentless Agent service', () => {
key: '/path/to/key',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1126,6 +1218,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1186,6 +1282,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1246,6 +1346,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1306,6 +1410,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1366,6 +1474,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1426,6 +1538,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1486,6 +1602,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down Expand Up @@ -1546,6 +1666,10 @@ describe('Agentless Agent service', () => {
ca: '/path/to/ca',
},
},
deploymentSecrets: {
fleetAppToken: 'fleet-app-token',
elasticsearchAppToken: 'es-app-token',
},
},
} as any);
jest.spyOn(appContextService, 'getCloud').mockReturnValue({ isCloudEnabled: true } as any);
Expand Down
Loading
Loading