Skip to content

Commit c55bbb9

Browse files
authored
Merge branch '8.x' into backport/8.x/pr-210113
2 parents 2c82c32 + 52f6111 commit c55bbb9

164 files changed

Lines changed: 2299 additions & 616 deletions

File tree

Some content is hidden

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

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1262,7 +1262,7 @@
12621262
"rxjs": "^7.8.1",
12631263
"safe-squel": "^5.12.5",
12641264
"seedrandom": "^3.0.5",
1265-
"semver": "^7.7.0",
1265+
"semver": "^7.7.1",
12661266
"set-value": "^4.1.0",
12671267
"snakecase-keys": "^8.0.0",
12681268
"source-map-support": "^0.5.19",

packages/kbn-scout-info/src/reporting.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,11 @@ export const SCOUT_TEST_EVENTS_INDEX_PATTERN =
2626
process.env.SCOUT_TEST_EVENTS_INDEX_PATTERN || `${SCOUT_TEST_EVENTS_TEMPLATE_NAME}-*`;
2727
export const SCOUT_TEST_EVENTS_DATA_STREAM_NAME =
2828
process.env.SCOUT_TEST_EVENTS_DATA_STREAM_NAME || `${SCOUT_TEST_EVENTS_TEMPLATE_NAME}-kibana`;
29+
30+
export enum ScoutTestRunConfigCategory {
31+
UI_TEST = 'ui-test',
32+
API_TEST = 'api-test',
33+
UNIT_TEST = 'unit-test',
34+
UNIT_INTEGRATION_TEST = 'unit-integration-test',
35+
UNKNOWN = 'unknown',
36+
}

packages/kbn-scout-reporting/src/reporting/playwright/events/playwright_reporter.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import type {
2020

2121
import path from 'node:path';
2222
import { ToolingLog } from '@kbn/tooling-log';
23-
import { SCOUT_REPORT_OUTPUT_ROOT } from '@kbn/scout-info';
23+
import { SCOUT_REPORT_OUTPUT_ROOT, ScoutTestRunConfigCategory } from '@kbn/scout-info';
2424
import stripANSI from 'strip-ansi';
2525
import { REPO_ROOT } from '@kbn/repo-info';
2626
import {
@@ -107,6 +107,7 @@ export class ScoutPlaywrightReporter implements Reporter {
107107
if (config.configFile !== undefined) {
108108
configInfo = {
109109
file: this.getScoutFileInfoForPath(path.relative(REPO_ROOT, config.configFile)),
110+
category: ScoutTestRunConfigCategory.UI_TEST,
110111
};
111112
}
112113

packages/kbn-scout-reporting/src/reporting/report/events/event.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
* License v3.0 only", or the "Server Side Public License, v 1".
88
*/
99

10+
import { ScoutTestRunConfigCategory } from '@kbn/scout-info';
1011
import { BuildkiteMetadata, HostMetadata } from '../../../datasources';
1112

1213
/**
@@ -61,6 +62,7 @@ export interface ScoutTestRunInfo {
6162
id: string;
6263
config?: {
6364
file?: ScoutFileInfo;
65+
category?: ScoutTestRunConfigCategory;
6466
};
6567
status?: string;
6668
duration?: number;

packages/kbn-scout-reporting/src/reporting/report/events/persistence/mappings.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,9 @@ export const testRunProperties: Record<PropertyName, MappingProperty> = {
133133
type: 'object',
134134
properties: fileInfoProperties,
135135
},
136+
category: {
137+
type: 'keyword',
138+
},
136139
},
137140
},
138141
};

packages/kbn-test/src/functional_test_runner/integration_tests/basic.test.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,10 @@ const BASIC_CONFIG = require.resolve('./__fixtures__/simple_project/config.js');
1717

1818
describe('basic config file with a single app and test', function () {
1919
it('runs and prints expected output', () => {
20-
const proc = spawnSync(process.execPath, [SCRIPT, '--config', BASIC_CONFIG]);
20+
const proc = spawnSync(process.execPath, [SCRIPT, '--config', BASIC_CONFIG], {
21+
// this FTR run should not produce a scout report
22+
env: { ...process.env, SCOUT_REPORTER_ENABLED: '0' },
23+
});
2124
const stdout = proc.stdout.toString('utf8');
2225
expect(stdout).toContain('$BEFORE$');
2326
expect(stdout).toContain('$TESTNAME$');

packages/kbn-test/src/functional_test_runner/integration_tests/failure_hooks.test.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ const FAILURE_HOOKS_CONFIG = require.resolve('./__fixtures__/failure_hooks/confi
1818

1919
describe('failure hooks', function () {
2020
it('runs and prints expected output', () => {
21-
const proc = spawnSync(process.execPath, [SCRIPT, '--config', FAILURE_HOOKS_CONFIG]);
21+
const proc = spawnSync(process.execPath, [SCRIPT, '--config', FAILURE_HOOKS_CONFIG], {
22+
// this FTR run should not produce a scout report
23+
env: { ...process.env, SCOUT_REPORTER_ENABLED: '0' },
24+
});
2225
const lines = stripAnsi(proc.stdout.toString('utf8')).split(/\r?\n/);
2326
const linesCopy = [...lines];
2427

packages/kbn-test/src/functional_test_runner/lib/config/schema.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { dirname, resolve } from 'path';
1111

1212
import Joi from 'joi';
1313
import type { CustomHelpers } from 'joi';
14-
import { SCOUT_REPORTER_ENABLED } from '@kbn/scout-info';
14+
import { SCOUT_REPORTER_ENABLED, ScoutTestRunConfigCategory } from '@kbn/scout-info';
1515

1616
// valid pattern for ID
1717
// enforced camel-case identifiers for consistency
@@ -92,6 +92,9 @@ export const schema = Joi.object()
9292
testFiles: Joi.array().items(Joi.string()),
9393
testRunner: Joi.func(),
9494
serverless: Joi.boolean().default(false),
95+
testConfigCategory: Joi.string()
96+
.valid(...Object.values(ScoutTestRunConfigCategory))
97+
.default(ScoutTestRunConfigCategory.UNKNOWN),
9598

9699
suiteFiles: Joi.object()
97100
.keys({

packages/kbn-test/src/functional_test_runner/lib/mocha/reporter/scout_ftr_reporter.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,10 @@ export class ScoutFTRReporter {
6868
this.codeOwnersEntries = getCodeOwnersEntries();
6969
this.baseTestRunInfo = {
7070
id: this.runId,
71-
config: { file: this.getScoutFileInfoForPath(path.relative(REPO_ROOT, config.path)) },
71+
config: {
72+
file: this.getScoutFileInfoForPath(path.relative(REPO_ROOT, config.path)),
73+
category: config.get('testConfigCategory'),
74+
},
7275
};
7376

7477
// Register event listeners

src/platform/packages/private/kbn-language-documentation/scripts/generate_esql_docs.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ interface DocsSectionContent {
2020

2121
(function () {
2222
const pathToElasticsearch = process.argv[2];
23-
const { scalarFunctions, aggregationFunctions } = loadFunctionDocs(pathToElasticsearch);
23+
const { scalarFunctions, aggregationFunctions, groupingFunctions } =
24+
loadFunctionDocs(pathToElasticsearch);
2425
writeFunctionDocs(
2526
scalarFunctions,
2627
path.join(__dirname, '../src/sections/generated/scalar_functions.tsx')
@@ -29,6 +30,10 @@ interface DocsSectionContent {
2930
aggregationFunctions,
3031
path.join(__dirname, '../src/sections/generated/aggregation_functions.tsx')
3132
);
33+
writeFunctionDocs(
34+
groupingFunctions,
35+
path.join(__dirname, '../src/sections/generated/grouping_functions.tsx')
36+
);
3237
})();
3338

3439
function loadFunctionDocs(pathToElasticsearch: string) {
@@ -48,6 +53,7 @@ function loadFunctionDocs(pathToElasticsearch: string) {
4853

4954
const scalarFunctions = new Map<string, DocsSectionContent>();
5055
const aggregationFunctions = new Map<string, DocsSectionContent>();
56+
const groupingFunctions = new Map<string, DocsSectionContent>();
5157

5258
// Iterate over each file in the directory
5359
for (const file of docsFiles) {
@@ -80,10 +86,16 @@ function loadFunctionDocs(pathToElasticsearch: string) {
8086
preview: functionDefinition.preview,
8187
});
8288
}
89+
if (functionDefinition.type === 'grouping') {
90+
groupingFunctions.set(functionName, {
91+
description: content,
92+
preview: functionDefinition.preview,
93+
});
94+
}
8395
}
8496
}
8597

86-
return { scalarFunctions, aggregationFunctions };
98+
return { scalarFunctions, aggregationFunctions, groupingFunctions };
8799
}
88100

89101
function writeFunctionDocs(functionDocs: Map<string, DocsSectionContent>, pathToDocsFile: string) {

0 commit comments

Comments
 (0)