Skip to content

Commit a3ec5ed

Browse files
Merge branch '7.x' into backport/7.x/pr-56104
2 parents 16726d5 + c2c262c commit a3ec5ed

File tree

174 files changed

+1443
-1173
lines changed

Some content is hidden

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

174 files changed

+1443
-1173
lines changed

.ci/Jenkinsfile_coverage

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
#!/bin/groovy
2+
3+
library 'kibana-pipeline-library'
4+
kibanaLibrary.load() // load from the Jenkins instance
5+
6+
stage("Kibana Pipeline") { // This stage is just here to help the BlueOcean UI a little bit
7+
timeout(time: 180, unit: 'MINUTES') {
8+
timestamps {
9+
ansiColor('xterm') {
10+
catchError {
11+
withEnv([
12+
'CODE_COVERAGE=1', // Needed for multiple ci scripts, such as remote.ts, test/scripts/*.sh, schema.js, etc.
13+
]) {
14+
parallel([
15+
'kibana-intake-agent': {
16+
withEnv([
17+
'NODE_ENV=test' // Needed for jest tests only
18+
]) {
19+
kibanaPipeline.intakeWorker('kibana-intake', './test/scripts/jenkins_unit.sh')()
20+
}
21+
},
22+
'x-pack-intake-agent': {
23+
withEnv([
24+
'NODE_ENV=test' // Needed for jest tests only
25+
]) {
26+
kibanaPipeline.intakeWorker('x-pack-intake', './test/scripts/jenkins_xpack.sh')()
27+
}
28+
},
29+
'kibana-oss-agent': kibanaPipeline.withWorkers('kibana-oss-tests', { kibanaPipeline.buildOss() }, [
30+
'oss-ciGroup1': kibanaPipeline.getOssCiGroupWorker(1),
31+
'oss-ciGroup2': kibanaPipeline.getOssCiGroupWorker(2),
32+
'oss-ciGroup3': kibanaPipeline.getOssCiGroupWorker(3),
33+
'oss-ciGroup4': kibanaPipeline.getOssCiGroupWorker(4),
34+
'oss-ciGroup5': kibanaPipeline.getOssCiGroupWorker(5),
35+
'oss-ciGroup6': kibanaPipeline.getOssCiGroupWorker(6),
36+
'oss-ciGroup7': kibanaPipeline.getOssCiGroupWorker(7),
37+
'oss-ciGroup8': kibanaPipeline.getOssCiGroupWorker(8),
38+
'oss-ciGroup9': kibanaPipeline.getOssCiGroupWorker(9),
39+
'oss-ciGroup10': kibanaPipeline.getOssCiGroupWorker(10),
40+
'oss-ciGroup11': kibanaPipeline.getOssCiGroupWorker(11),
41+
'oss-ciGroup12': kibanaPipeline.getOssCiGroupWorker(12),
42+
]),
43+
'kibana-xpack-agent-1': kibanaPipeline.withWorkers('kibana-xpack-tests-1', { kibanaPipeline.buildXpack() }, [
44+
'xpack-ciGroup1': kibanaPipeline.getXpackCiGroupWorker(1),
45+
'xpack-ciGroup2': kibanaPipeline.getXpackCiGroupWorker(2),
46+
]),
47+
'kibana-xpack-agent-2': kibanaPipeline.withWorkers('kibana-xpack-tests-2', { kibanaPipeline.buildXpack() }, [
48+
'xpack-ciGroup3': kibanaPipeline.getXpackCiGroupWorker(3),
49+
'xpack-ciGroup4': kibanaPipeline.getXpackCiGroupWorker(4),
50+
]),
51+
52+
'kibana-xpack-agent-3': kibanaPipeline.withWorkers('kibana-xpack-tests-3', { kibanaPipeline.buildXpack() }, [
53+
'xpack-ciGroup5': kibanaPipeline.getXpackCiGroupWorker(5),
54+
'xpack-ciGroup6': kibanaPipeline.getXpackCiGroupWorker(6),
55+
'xpack-ciGroup7': kibanaPipeline.getXpackCiGroupWorker(7),
56+
'xpack-ciGroup8': kibanaPipeline.getXpackCiGroupWorker(8),
57+
'xpack-ciGroup9': kibanaPipeline.getXpackCiGroupWorker(9),
58+
'xpack-ciGroup10': kibanaPipeline.getXpackCiGroupWorker(10),
59+
]),
60+
])
61+
kibanaPipeline.jobRunner('tests-l', false) {
62+
kibanaPipeline.downloadCoverageArtifacts()
63+
kibanaPipeline.bash(
64+
'''
65+
# bootstrap from x-pack folder
66+
source src/dev/ci_setup/setup_env.sh
67+
cd x-pack
68+
yarn kbn bootstrap --prefer-offline
69+
cd ..
70+
# extract archives
71+
mkdir -p /tmp/extracted_coverage
72+
echo extracting intakes
73+
tar -xzf /tmp/downloaded_coverage/coverage/kibana-intake/kibana-coverage.tar.gz -C /tmp/extracted_coverage
74+
tar -xzf /tmp/downloaded_coverage/coverage/x-pack-intake/kibana-coverage.tar.gz -C /tmp/extracted_coverage
75+
echo extracting kibana-oss-tests
76+
tar -xzf /tmp/downloaded_coverage/coverage/kibana-oss-tests/kibana-coverage.tar.gz -C /tmp/extracted_coverage
77+
echo extracting kibana-xpack-tests
78+
for i in {1..3}; do
79+
tar -xzf /tmp/downloaded_coverage/coverage/kibana-xpack-tests-${i}/kibana-coverage.tar.gz -C /tmp/extracted_coverage
80+
done
81+
# replace path in json files to have valid html report
82+
pwd=$(pwd)
83+
du -sh /tmp/extracted_coverage/target/kibana-coverage/
84+
echo replacing path in json files
85+
for i in {1..9}; do
86+
sed -i "s|/dev/shm/workspace/kibana|$pwd|g" /tmp/extracted_coverage/target/kibana-coverage/functional/${i}*.json &
87+
done
88+
wait
89+
# merge oss & x-pack reports
90+
echo merging coverage reports
91+
yarn nyc report --temp-dir /tmp/extracted_coverage/target/kibana-coverage/jest --report-dir target/kibana-coverage/jest-combined --reporter=html --reporter=json-summary
92+
yarn nyc report --temp-dir /tmp/extracted_coverage/target/kibana-coverage/functional --report-dir target/kibana-coverage/functional-combined --reporter=html --reporter=json-summary
93+
echo copy mocha reports
94+
mkdir -p target/kibana-coverage/mocha-combined
95+
cp -r /tmp/extracted_coverage/target/kibana-coverage/mocha target/kibana-coverage/mocha-combined
96+
''',
97+
"run `yarn kbn bootstrap && merge coverage`"
98+
)
99+
sh 'tar -czf kibana-jest-coverage.tar.gz target/kibana-coverage/jest-combined/*'
100+
kibanaPipeline.uploadCoverageArtifacts("coverage/jest-combined", 'kibana-jest-coverage.tar.gz')
101+
sh 'tar -czf kibana-functional-coverage.tar.gz target/kibana-coverage/functional-combined/*'
102+
kibanaPipeline.uploadCoverageArtifacts("coverage/functional-combined", 'kibana-functional-coverage.tar.gz')
103+
sh 'tar -czf kibana-mocha-coverage.tar.gz target/kibana-coverage/mocha-combined/*'
104+
kibanaPipeline.uploadCoverageArtifacts("coverage/mocha-combined", 'kibana-mocha-coverage.tar.gz')
105+
}
106+
}
107+
}
108+
kibanaPipeline.sendMail()
109+
}
110+
}
111+
}
112+
}

.ci/es-snapshots/Jenkinsfile_verify_es

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ timeout(time: 120, unit: 'MINUTES') {
2626
withEnv(["ES_SNAPSHOT_MANIFEST=${SNAPSHOT_MANIFEST}"]) {
2727
parallel([
2828
// TODO we just need to run integration tests from intake?
29-
'kibana-intake-agent': kibanaPipeline.legacyJobRunner('kibana-intake'),
30-
'x-pack-intake-agent': kibanaPipeline.legacyJobRunner('x-pack-intake'),
29+
'kibana-intake-agent': kibanaPipeline.intakeWorker('kibana-intake', './test/scripts/jenkins_unit.sh'),
30+
'x-pack-intake-agent': kibanaPipeline.intakeWorker('x-pack-intake', './test/scripts/jenkins_xpack.sh'),
3131
'kibana-oss-agent': kibanaPipeline.withWorkers('kibana-oss-tests', { kibanaPipeline.buildOss() }, [
3232
'oss-ciGroup1': kibanaPipeline.getOssCiGroupWorker(1),
3333
'oss-ciGroup2': kibanaPipeline.getOssCiGroupWorker(2),

.ci/jobs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# This file is needed by functionalTests:ensureAllTestsInCiGroup for the list of ciGroups. That must be changed before this file can be removed
2+
13
JOB:
24
- kibana-intake
35
- x-pack-intake

.ci/run.sh

Lines changed: 0 additions & 50 deletions
This file was deleted.

Jenkinsfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ stage("Kibana Pipeline") { // This stage is just here to help the BlueOcean UI a
1111
catchError {
1212
retryable.enable()
1313
parallel([
14-
'kibana-intake-agent': kibanaPipeline.legacyJobRunner('kibana-intake'),
15-
'x-pack-intake-agent': kibanaPipeline.legacyJobRunner('x-pack-intake'),
14+
'kibana-intake-agent': kibanaPipeline.intakeWorker('kibana-intake', './test/scripts/jenkins_unit.sh'),
15+
'x-pack-intake-agent': kibanaPipeline.intakeWorker('x-pack-intake', './test/scripts/jenkins_xpack.sh'),
1616
'kibana-oss-agent': kibanaPipeline.withWorkers('kibana-oss-tests', { kibanaPipeline.buildOss() }, [
1717
'oss-firefoxSmoke': kibanaPipeline.getPostBuildWorker('firefoxSmoke', {
1818
retryable('kibana-firefoxSmoke') {

NOTICE.txt

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,40 @@ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
153153
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
154154
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
155155

156+
---
157+
This product bundles rules based on https://github.com/BlueTeamLabs/sentinel-attack
158+
which is available under a "MIT" license. The files based on this license are:
159+
160+
- windows_defense_evasion_via_filter_manager.json
161+
- windows_process_discovery_via_tasklist_command.json
162+
- windows_priv_escalation_via_accessibility_features.json
163+
- windows_persistence_via_application_shimming.json
164+
- windows_execution_via_trusted_developer_utilities.json
165+
- windows_execution_via_net_com_assemblies.json
166+
- windows_execution_via_connection_manager.json
167+
168+
MIT License
169+
170+
Copyright (c) 2019 Edoardo Gerosa, Olaf Hartong
171+
172+
Permission is hereby granted, free of charge, to any person obtaining a copy of
173+
this software and associated documentation files (the "Software"), to deal in
174+
the Software without restriction, including without limitation the rights to
175+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
176+
of the Software, and to permit persons to whom the Software is furnished to do
177+
so, subject to the following conditions:
178+
179+
The above copyright notice and this permission notice shall be included in all
180+
copies or substantial portions of the Software.
181+
182+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
183+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
184+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
185+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
186+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
187+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
188+
SOFTWARE.
189+
156190
---
157191
This product includes code that is adapted from mapbox-gl-js, which is
158192
available under a "BSD-3-Clause" license.

docs/api/saved-objects/import.asciidoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ Import an index pattern and dashboard:
4949

5050
[source,js]
5151
--------------------------------------------------
52-
$ curl -X POST "localhost:5601/api/saved_objects/_import" -H "kbn-xsrf: true" --form [email protected] <1>
52+
$ curl -X POST "localhost:5601/api/saved_objects/_import" -H "kbn-xsrf: true" --form [email protected]
5353
--------------------------------------------------
5454

5555
The `file.ndjson` file contains the following:

packages/kbn-es/src/artifact.test.js

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -52,21 +52,22 @@ const createArchive = (params = {}) => {
5252
const mockFetch = mock =>
5353
fetch.mockReturnValue(Promise.resolve(new Response(JSON.stringify(mock))));
5454

55-
let previousSnapshotManifestValue = null;
55+
const previousEnvVars = {};
56+
const ENV_VARS_TO_RESET = ['ES_SNAPSHOT_MANIFEST', 'KBN_ES_SNAPSHOT_USE_UNVERIFIED'];
5657

5758
beforeAll(() => {
58-
if ('ES_SNAPSHOT_MANIFEST' in process.env) {
59-
previousSnapshotManifestValue = process.env.ES_SNAPSHOT_MANIFEST;
60-
delete process.env.ES_SNAPSHOT_MANIFEST;
61-
}
59+
ENV_VARS_TO_RESET.forEach(key => {
60+
if (key in process.env) {
61+
previousEnvVars[key] = process.env[key];
62+
delete process.env[key];
63+
}
64+
});
6265
});
6366

6467
afterAll(() => {
65-
if (previousSnapshotManifestValue !== null) {
66-
process.env.ES_SNAPSHOT_MANIFEST = previousSnapshotManifestValue;
67-
} else {
68-
delete process.env.ES_SNAPSHOT_MANIFEST;
69-
}
68+
Object.keys(previousEnvVars).forEach(key => {
69+
process.env[key] = previousEnvVars[key];
70+
});
7071
});
7172

7273
beforeEach(() => {

src/core/server/config/deprecation/core_deprecations.ts

Lines changed: 0 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -119,56 +119,6 @@ export const coreDeprecationProvider: ConfigDeprecationProvider = ({
119119
renameFromRoot('xpack.telemetry.config', 'telemetry.config'),
120120
renameFromRoot('xpack.telemetry.banner', 'telemetry.banner'),
121121
renameFromRoot('xpack.telemetry.url', 'telemetry.url'),
122-
// Monitoring renames
123-
// TODO: Remove these from here once the monitoring plugin is migrated to NP
124-
renameFromRoot('xpack.monitoring.enabled', 'monitoring.enabled'),
125-
renameFromRoot('xpack.monitoring.ui.enabled', 'monitoring.ui.enabled'),
126-
renameFromRoot(
127-
'xpack.monitoring.kibana.collection.enabled',
128-
'monitoring.kibana.collection.enabled'
129-
),
130-
renameFromRoot('xpack.monitoring.max_bucket_size', 'monitoring.ui.max_bucket_size'),
131-
renameFromRoot('xpack.monitoring.min_interval_seconds', 'monitoring.ui.min_interval_seconds'),
132-
renameFromRoot(
133-
'xpack.monitoring.show_license_expiration',
134-
'monitoring.ui.show_license_expiration'
135-
),
136-
renameFromRoot(
137-
'xpack.monitoring.ui.container.elasticsearch.enabled',
138-
'monitoring.ui.container.elasticsearch.enabled'
139-
),
140-
renameFromRoot(
141-
'xpack.monitoring.ui.container.logstash.enabled',
142-
'monitoring.ui.container.logstash.enabled'
143-
),
144-
renameFromRoot(
145-
'xpack.monitoring.tests.cloud_detector.enabled',
146-
'monitoring.tests.cloud_detector.enabled'
147-
),
148-
renameFromRoot(
149-
'xpack.monitoring.kibana.collection.interval',
150-
'monitoring.kibana.collection.interval'
151-
),
152-
renameFromRoot('xpack.monitoring.elasticsearch.hosts', 'monitoring.ui.elasticsearch.hosts'),
153-
renameFromRoot('xpack.monitoring.elasticsearch.username', 'monitoring.ui.elasticsearch.username'),
154-
renameFromRoot('xpack.monitoring.elasticsearch.password', 'monitoring.ui.elasticsearch.password'),
155-
renameFromRoot(
156-
'xpack.monitoring.xpack_api_polling_frequency_millis',
157-
'monitoring.xpack_api_polling_frequency_millis'
158-
),
159-
renameFromRoot(
160-
'xpack.monitoring.cluster_alerts.email_notifications.enabled',
161-
'monitoring.cluster_alerts.email_notifications.enabled'
162-
),
163-
renameFromRoot(
164-
'xpack.monitoring.cluster_alerts.email_notifications.email_address',
165-
'monitoring.cluster_alerts.email_notifications.email_address'
166-
),
167-
renameFromRoot('xpack.monitoring.ccs.enabled', 'monitoring.ui.ccs.enabled'),
168-
renameFromRoot(
169-
'xpack.monitoring.elasticsearch.logFetchCount',
170-
'monitoring.ui.elasticsearch.logFetchCount'
171-
),
172122
configPathDeprecation,
173123
dataPathDeprecation,
174124
rewriteBasePathDeprecation,

src/plugins/newsfeed/public/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@
1818
*/
1919

2020
import { PluginInitializerContext } from 'src/core/public';
21-
import { NewsfeedPublicPlugin } from './plugin';
21+
import { Setup, Start, NewsfeedPublicPlugin } from './plugin';
22+
23+
export { Setup, Start };
2224

2325
export function plugin(initializerContext: PluginInitializerContext) {
2426
return new NewsfeedPublicPlugin(initializerContext);

0 commit comments

Comments
 (0)