Skip to content

Commit 9a14580

Browse files
Merge branch 'master' into feature/host-isolation-exception-artifact-generation
2 parents 2531ed1 + 71d7961 commit 9a14580

File tree

79 files changed

+1515
-546
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+1515
-546
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
steps:
2+
- block: ":gear: Performance Tests Configuration"
3+
prompt: "Fill out the details for performance test"
4+
fields:
5+
- text: ":arrows_counterclockwise: Iterations"
6+
key: "performance-test-iteration-count"
7+
hint: "How many times you want to run tests? "
8+
required: true
9+
if: build.env('ITERATION_COUNT_ENV') == null
10+
11+
- label: ":male-mechanic::skin-tone-2: Pre-Build"
12+
command: .buildkite/scripts/lifecycle/pre_build.sh
13+
14+
- wait
15+
16+
- label: ":factory_worker: Build Kibana Distribution and Plugins"
17+
command: .buildkite/scripts/steps/build_kibana.sh
18+
agents:
19+
queue: c2-16
20+
key: build
21+
22+
- label: ":muscle: Performance Tests"
23+
command: .buildkite/scripts/steps/functional/performance.sh
24+
agents:
25+
queue: ci-group-6
26+
depends_on: build
27+
concurrency: 50
28+
concurrency_group: 'performance-test-group'
29+
30+
- wait: ~
31+
continue_on_failure: true
32+
33+
- label: ":male_superhero::skin-tone-2: Post-Build"
34+
command: .buildkite/scripts/lifecycle/post_build.sh
35+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
set -uo pipefail
4+
5+
if [ -z "${ITERATION_COUNT_ENV+x}" ]; then
6+
ITERATION_COUNT="$(buildkite-agent meta-data get performance-test-iteration-count)"
7+
else
8+
ITERATION_COUNT=$ITERATION_COUNT_ENV
9+
fi
10+
11+
tput setab 2; tput setaf 0; echo "Performance test will be run at ${BUILDKITE_BRANCH} ${ITERATION_COUNT} times"
12+
13+
cat << EOF | buildkite-agent pipeline upload
14+
steps:
15+
- command: .buildkite/scripts/steps/functional/performance_sub.sh
16+
parallelism: "$ITERATION_COUNT"
17+
EOF
18+
19+
20+
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/usr/bin/env bash
2+
3+
set -euo pipefail
4+
5+
source .buildkite/scripts/common/util.sh
6+
7+
.buildkite/scripts/bootstrap.sh
8+
.buildkite/scripts/download_build_artifacts.sh
9+
10+
cd "$XPACK_DIR"
11+
12+
echo --- Run Performance Tests
13+
checks-reporter-with-killswitch "Run Performance Tests" \
14+
node scripts/functional_tests \
15+
--debug --bail \
16+
--kibana-install-dir "$KIBANA_BUILD_LOCATION" \
17+
--config test/performance/config.ts;

docs/management/connectors/action-types/pagerduty.asciidoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ PagerDuty actions have the following properties.
6868

6969
Severity:: The perceived severity of on the affected system. This can be one of `Critical`, `Error`, `Warning` or `Info`(default).
7070
Event action:: One of `Trigger` (default), `Resolve`, or `Acknowledge`. See https://v2.developer.pagerduty.com/docs/events-api-v2#event-action[event action] for more details.
71-
Dedup Key:: All actions sharing this key will be associated with the same PagerDuty alert. This value is used to correlate trigger and resolution. This value is *optional*, and if not set, defaults to `<alert ID>:<alert instance ID>`. The maximum length is *255* characters. See https://v2.developer.pagerduty.com/docs/events-api-v2#alert-de-duplication[alert deduplication] for details.
71+
Dedup Key:: All actions sharing this key will be associated with the same PagerDuty alert. This value is used to correlate trigger and resolution. This value is *optional*, and if not set, defaults to `<rule ID>:<alert ID>`. The maximum length is *255* characters. See https://v2.developer.pagerduty.com/docs/events-api-v2#alert-de-duplication[alert deduplication] for details.
7272
Timestamp:: An *optional* https://v2.developer.pagerduty.com/v2/docs/types#datetime[ISO-8601 format date-time], indicating the time the event was detected or generated.
7373
Component:: An *optional* value indicating the component of the source machine that is responsible for the event, for example `mysql` or `eth0`.
7474
Group:: An *optional* value indicating the logical grouping of components of a service, for example `app-stack`.

packages/kbn-securitysolution-list-constants/src/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,6 @@ export const ENDPOINT_EVENT_FILTERS_LIST_DESCRIPTION = 'Endpoint Security Event
7373

7474
export const ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_ID = 'endpoint_host_isolation_exceptions';
7575
export const ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_NAME =
76-
'Endpoint Security Host Isolation Exceptions List';
76+
'Endpoint Security Host isolation exceptions List';
7777
export const ENDPOINT_HOST_ISOLATION_EXCEPTIONS_LIST_DESCRIPTION =
78-
'Endpoint Security Host Isolation Exceptions List';
78+
'Endpoint Security Host isolation exceptions List';

src/plugins/custom_integrations/server/language_clients/index.ts

Lines changed: 9 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -23,27 +23,14 @@ interface LanguageIntegration {
2323
const ELASTIC_WEBSITE_URL = 'https://www.elastic.co';
2424
const ELASTICSEARCH_CLIENT_URL = `${ELASTIC_WEBSITE_URL}/guide/en/elasticsearch/client`;
2525
export const integrations: LanguageIntegration[] = [
26-
{
27-
id: 'all',
28-
title: i18n.translate('customIntegrations.languageclients.AllTitle', {
29-
defaultMessage: 'Elasticsearch Clients',
30-
}),
31-
euiIconName: 'logoElasticsearch',
32-
description: i18n.translate('customIntegrations.languageclients.AllDescription', {
33-
defaultMessage:
34-
'Start building your custom application on top of Elasticsearch with the official language clients.',
35-
}),
36-
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/index.html`,
37-
},
3826
{
3927
id: 'javascript',
4028
title: i18n.translate('customIntegrations.languageclients.JavascriptTitle', {
4129
defaultMessage: 'Elasticsearch JavaScript Client',
4230
}),
4331
icon: 'nodejs.svg',
4432
description: i18n.translate('customIntegrations.languageclients.JavascriptDescription', {
45-
defaultMessage:
46-
'Start building your custom application on top of Elasticsearch with the official Node.js client.',
33+
defaultMessage: 'Index data to Elasticsearch with the JavaScript client.',
4734
}),
4835
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/javascript-api/{branch}/introduction.html`,
4936
},
@@ -54,8 +41,7 @@ export const integrations: LanguageIntegration[] = [
5441
}),
5542
icon: 'ruby.svg',
5643
description: i18n.translate('customIntegrations.languageclients.RubyDescription', {
57-
defaultMessage:
58-
'Start building your custom application on top of Elasticsearch with the official Ruby client.',
44+
defaultMessage: 'Index data to Elasticsearch with the Ruby client.',
5945
}),
6046
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/ruby-api/{branch}/ruby_client.html`,
6147
},
@@ -66,8 +52,7 @@ export const integrations: LanguageIntegration[] = [
6652
}),
6753
icon: 'go.svg',
6854
description: i18n.translate('customIntegrations.languageclients.GoDescription', {
69-
defaultMessage:
70-
'Start building your custom application on top of Elasticsearch with the official Go client.',
55+
defaultMessage: 'Index data to Elasticsearch with the Go client.',
7156
}),
7257
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/go-api/{branch}/overview.html`,
7358
},
@@ -78,8 +63,7 @@ export const integrations: LanguageIntegration[] = [
7863
}),
7964
icon: 'dotnet.svg',
8065
description: i18n.translate('customIntegrations.languageclients.DotNetDescription', {
81-
defaultMessage:
82-
'Start building your custom application on top of Elasticsearch with the official .NET client.',
66+
defaultMessage: 'Index data to Elasticsearch with the .NET client.',
8367
}),
8468
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/net-api/{branch}/index.html`,
8569
},
@@ -90,8 +74,7 @@ export const integrations: LanguageIntegration[] = [
9074
}),
9175
icon: 'php.svg',
9276
description: i18n.translate('customIntegrations.languageclients.PhpDescription', {
93-
defaultMessage:
94-
'Start building your custom application on top of Elasticsearch with the official .PHP client.',
77+
defaultMessage: 'Index data to Elasticsearch with the PHP client.',
9578
}),
9679
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/php-api/{branch}/index.html`,
9780
},
@@ -102,8 +85,7 @@ export const integrations: LanguageIntegration[] = [
10285
}),
10386
icon: 'perl.svg',
10487
description: i18n.translate('customIntegrations.languageclients.PerlDescription', {
105-
defaultMessage:
106-
'Start building your custom application on top of Elasticsearch with the official Perl client.',
88+
defaultMessage: 'Index data to Elasticsearch with the Perl client.',
10789
}),
10890
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/perl-api/{branch}/index.html`,
10991
},
@@ -114,8 +96,7 @@ export const integrations: LanguageIntegration[] = [
11496
}),
11597
icon: 'python.svg',
11698
description: i18n.translate('customIntegrations.languageclients.PythonDescription', {
117-
defaultMessage:
118-
'Start building your custom application on top of Elasticsearch with the official Python client.',
99+
defaultMessage: 'Index data to Elasticsearch with the Python client.',
119100
}),
120101
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/python-api/{branch}/index.html`,
121102
},
@@ -126,8 +107,7 @@ export const integrations: LanguageIntegration[] = [
126107
}),
127108
icon: 'rust.svg',
128109
description: i18n.translate('customIntegrations.languageclients.RustDescription', {
129-
defaultMessage:
130-
'Start building your custom application on top of Elasticsearch with the official Rust client.',
110+
defaultMessage: 'Index data to Elasticsearch with the Rust client.',
131111
}),
132112
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/rust-api/{branch}/index.html`,
133113
},
@@ -138,8 +118,7 @@ export const integrations: LanguageIntegration[] = [
138118
}),
139119
icon: 'java.svg',
140120
description: i18n.translate('customIntegrations.languageclients.JavaDescription', {
141-
defaultMessage:
142-
'Start building your custom application on top of Elasticsearch with the official Java client.',
121+
defaultMessage: 'Index data to Elasticsearch with the Java client.',
143122
}),
144123
docUrlTemplate: `${ELASTICSEARCH_CLIENT_URL}/java-api-client/{branch}/index.html`,
145124
},

src/plugins/custom_integrations/server/plugin.test.ts

Lines changed: 9 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -31,23 +31,10 @@ describe('CustomIntegrationsPlugin', () => {
3131
test('should register language clients', () => {
3232
const setup = new CustomIntegrationsPlugin(initContext).setup(mockCoreSetup);
3333
expect(setup.getAppendCustomIntegrations()).toEqual([
34-
{
35-
id: 'language_client.all',
36-
title: 'Elasticsearch Clients',
37-
description:
38-
'Start building your custom application on top of Elasticsearch with the official language clients.',
39-
type: 'ui_link',
40-
shipper: 'language_clients',
41-
uiInternalPath: 'https://www.elastic.co/guide/en/elasticsearch/client/index.html',
42-
isBeta: false,
43-
icons: [{ type: 'eui', src: 'logoElasticsearch' }],
44-
categories: ['elastic_stack', 'custom', 'language_client'],
45-
},
4634
{
4735
id: 'language_client.javascript',
4836
title: 'Elasticsearch JavaScript Client',
49-
description:
50-
'Start building your custom application on top of Elasticsearch with the official Node.js client.',
37+
description: 'Index data to Elasticsearch with the JavaScript client.',
5138
type: 'ui_link',
5239
shipper: 'language_clients',
5340
uiInternalPath:
@@ -59,8 +46,7 @@ describe('CustomIntegrationsPlugin', () => {
5946
{
6047
id: 'language_client.ruby',
6148
title: 'Elasticsearch Ruby Client',
62-
description:
63-
'Start building your custom application on top of Elasticsearch with the official Ruby client.',
49+
description: 'Index data to Elasticsearch with the Ruby client.',
6450
type: 'ui_link',
6551
shipper: 'language_clients',
6652
uiInternalPath:
@@ -72,8 +58,7 @@ describe('CustomIntegrationsPlugin', () => {
7258
{
7359
id: 'language_client.go',
7460
title: 'Elasticsearch Go Client',
75-
description:
76-
'Start building your custom application on top of Elasticsearch with the official Go client.',
61+
description: 'Index data to Elasticsearch with the Go client.',
7762
type: 'ui_link',
7863
shipper: 'language_clients',
7964
uiInternalPath:
@@ -85,8 +70,7 @@ describe('CustomIntegrationsPlugin', () => {
8570
{
8671
id: 'language_client.dotnet',
8772
title: 'Elasticsearch .NET Client',
88-
description:
89-
'Start building your custom application on top of Elasticsearch with the official .NET client.',
73+
description: 'Index data to Elasticsearch with the .NET client.',
9074
type: 'ui_link',
9175
shipper: 'language_clients',
9276
uiInternalPath:
@@ -98,8 +82,7 @@ describe('CustomIntegrationsPlugin', () => {
9882
{
9983
id: 'language_client.php',
10084
title: 'Elasticsearch PHP Client',
101-
description:
102-
'Start building your custom application on top of Elasticsearch with the official .PHP client.',
85+
description: 'Index data to Elasticsearch with the PHP client.',
10386
type: 'ui_link',
10487
shipper: 'language_clients',
10588
uiInternalPath:
@@ -111,8 +94,7 @@ describe('CustomIntegrationsPlugin', () => {
11194
{
11295
id: 'language_client.perl',
11396
title: 'Elasticsearch Perl Client',
114-
description:
115-
'Start building your custom application on top of Elasticsearch with the official Perl client.',
97+
description: 'Index data to Elasticsearch with the Perl client.',
11698
type: 'ui_link',
11799
shipper: 'language_clients',
118100
uiInternalPath:
@@ -124,8 +106,7 @@ describe('CustomIntegrationsPlugin', () => {
124106
{
125107
id: 'language_client.python',
126108
title: 'Elasticsearch Python Client',
127-
description:
128-
'Start building your custom application on top of Elasticsearch with the official Python client.',
109+
description: 'Index data to Elasticsearch with the Python client.',
129110
type: 'ui_link',
130111
shipper: 'language_clients',
131112
uiInternalPath:
@@ -137,8 +118,7 @@ describe('CustomIntegrationsPlugin', () => {
137118
{
138119
id: 'language_client.rust',
139120
title: 'Elasticsearch Rust Client',
140-
description:
141-
'Start building your custom application on top of Elasticsearch with the official Rust client.',
121+
description: 'Index data to Elasticsearch with the Rust client.',
142122
type: 'ui_link',
143123
shipper: 'language_clients',
144124
uiInternalPath:
@@ -150,8 +130,7 @@ describe('CustomIntegrationsPlugin', () => {
150130
{
151131
id: 'language_client.java',
152132
title: 'Elasticsearch Java Client',
153-
description:
154-
'Start building your custom application on top of Elasticsearch with the official Java client.',
133+
description: 'Index data to Elasticsearch with the Java client.',
155134
type: 'ui_link',
156135
shipper: 'language_clients',
157136
uiInternalPath:

src/plugins/home/server/services/sample_data/data_sets/logs/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ const logsDescription = i18n.translate('home.sampleData.logsSpecDescription', {
2020
});
2121
const initialAppLinks = [] as AppLinkSchema[];
2222

23+
export const GLOBE_ICON_PATH = '/plugins/home/assets/sample_data_resources/logs/icon.svg';
2324
export const logsSpecProvider = function (): SampleDatasetSchema {
2425
return {
2526
id: 'logs',
@@ -42,6 +43,6 @@ export const logsSpecProvider = function (): SampleDatasetSchema {
4243
},
4344
],
4445
status: 'not_installed',
45-
iconPath: '/plugins/home/assets/sample_data_resources/logs/icon.svg',
46+
iconPath: GLOBE_ICON_PATH,
4647
};
4748
};

src/plugins/home/server/services/sample_data/lib/register_with_integrations.ts

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,29 +7,26 @@
77
*/
88

99
import { CoreSetup } from 'kibana/server';
10+
import { i18n } from '@kbn/i18n';
1011
import { CustomIntegrationsPluginSetup } from '../../../../../custom_integrations/server';
11-
import { SampleDatasetSchema } from './sample_dataset_schema';
1212
import { HOME_APP_BASE_PATH } from '../../../../common/constants';
13+
import { GLOBE_ICON_PATH } from '../data_sets/logs';
1314

1415
export function registerSampleDatasetWithIntegration(
1516
customIntegrations: CustomIntegrationsPluginSetup,
16-
core: CoreSetup,
17-
sampleDataset: SampleDatasetSchema
17+
core: CoreSetup
1818
) {
1919
customIntegrations.registerCustomIntegration({
20-
id: sampleDataset.id,
21-
title: sampleDataset.name,
22-
description: sampleDataset.description,
20+
id: 'sample_data_all',
21+
title: i18n.translate('home.sampleData.customIntegrationsTitle', {
22+
defaultMessage: 'Sample Data',
23+
}),
24+
description: i18n.translate('home.sampleData.customIntegrationsDescription', {
25+
defaultMessage: 'Add sample data and assets to Elasticsearch and Kibana.',
26+
}),
2327
uiInternalPath: `${HOME_APP_BASE_PATH}#/tutorial_directory/sampleData`,
2428
isBeta: false,
25-
icons: sampleDataset.iconPath
26-
? [
27-
{
28-
type: 'svg',
29-
src: core.http.basePath.prepend(sampleDataset.iconPath),
30-
},
31-
]
32-
: [],
29+
icons: [{ type: 'svg', src: core.http.basePath.prepend(GLOBE_ICON_PATH) }],
3330
categories: ['sample_data'],
3431
shipper: 'sample_data',
3532
});

0 commit comments

Comments
 (0)