mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 09:48:58 -04:00
This commit is contained in:
parent
17086ad6ce
commit
92aea763cb
2 changed files with 23 additions and 3 deletions
|
@ -23,6 +23,7 @@ import {
|
|||
import { getApmPackagePolicyDefinition } from './get_apm_package_policy_definition';
|
||||
import { Setup } from '../../lib/helpers/setup_request';
|
||||
import { mergePackagePolicyWithApm } from './merge_package_policy_with_apm';
|
||||
import { ELASTIC_CLOUD_APM_AGENT_POLICY_ID } from '../../../common/fleet';
|
||||
|
||||
export async function createCloudApmPackgePolicy({
|
||||
cloudPluginSetup,
|
||||
|
@ -65,7 +66,7 @@ export async function createCloudApmPackgePolicy({
|
|||
savedObjectsClient,
|
||||
esClient,
|
||||
mergedAPMPackagePolicy,
|
||||
{ force: true, bumpRevision: true }
|
||||
{ id: ELASTIC_CLOUD_APM_AGENT_POLICY_ID, force: true, bumpRevision: true }
|
||||
);
|
||||
logger.info(`Fleet migration on Cloud - apmPackagePolicy create end`);
|
||||
return apmPackagePolicy;
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
* 2.0.
|
||||
*/
|
||||
|
||||
import yaml from 'js-yaml';
|
||||
import { KibanaRequest } from 'kibana/server';
|
||||
import { RegistryVarsEntry } from '../../../../fleet/common';
|
||||
import {
|
||||
POLICY_ELASTIC_AGENT_ON_CLOUD,
|
||||
INPUT_VAR_NAME_TO_SCHEMA_PATH,
|
||||
ELASTIC_CLOUD_APM_AGENT_POLICY_ID,
|
||||
} from '../../../common/fleet';
|
||||
import {
|
||||
APMPluginSetupDependencies,
|
||||
|
@ -36,7 +36,6 @@ export async function getApmPackagePolicyDefinition({
|
|||
});
|
||||
|
||||
return {
|
||||
id: ELASTIC_CLOUD_APM_AGENT_POLICY_ID,
|
||||
name: 'Elastic APM',
|
||||
namespace: 'default',
|
||||
enabled: true,
|
||||
|
@ -73,6 +72,9 @@ function getApmPackageInputVars({
|
|||
}): Record<string, { type: string; value: any }> {
|
||||
const overrideValues: Record<string, any> = {
|
||||
url: cloudPluginSetup?.apm?.url, // overrides 'apm-server.url' to be the cloud APM host
|
||||
rum_allow_origins: ensureValidMultiText(
|
||||
apmServerSchema[INPUT_VAR_NAME_TO_SCHEMA_PATH.rum_allow_origins]
|
||||
), // fixes issue where "*" needs to be wrapped in quotes to be parsed as a YAML string
|
||||
};
|
||||
|
||||
return policyTemplateInputVars.reduce((acc, registryVarsEntry) => {
|
||||
|
@ -90,3 +92,20 @@ function getApmPackageInputVars({
|
|||
};
|
||||
}, {});
|
||||
}
|
||||
|
||||
function ensureValidMultiText(textMultiValue: string[] | undefined) {
|
||||
if (!textMultiValue) {
|
||||
return undefined;
|
||||
}
|
||||
return textMultiValue.map(escapeInvalidYamlString);
|
||||
}
|
||||
function escapeInvalidYamlString(yamlString: string) {
|
||||
try {
|
||||
yaml.load(yamlString);
|
||||
} catch (error) {
|
||||
if (error instanceof yaml.YAMLException) {
|
||||
return `"${yamlString}"`;
|
||||
}
|
||||
}
|
||||
return yamlString;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue