Skip to content

Commit 607ab19

Browse files
Merge branch 'main' into synthetics-embeddable-schema-registration
2 parents a8a5a1a + cd16295 commit 607ab19

2,247 files changed

Lines changed: 101746 additions & 30866 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.

.agent/skills/ftr-testing/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: FTR Testing
2+
name: ftr-testing
33
description: Use when creating, updating, debugging, or reviewing Kibana Functional Test Runner (FTR) tests, including test structure, services/page objects, loadTestFile patterns, tags, and how to run FTR locally.
44
---
55

.agent/skills/scout-api-testing/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: Scout API Testing
2+
name: scout-api-testing
33
description: Use when creating, updating, debugging, or reviewing Scout API tests in Kibana (apiTest/apiClient/requestAuth/samlAuth/apiServices), including auth choices, response assertions, and API service patterns.
44
---
55

.agent/skills/scout-best-practices-reviewer/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: Scout Best Practices Reviewer
2+
name: scout-best-practices-reviewer
33
description: Use when writing and reviewing Scout UI and API test files.
44
---
55

.agent/skills/scout-create-scaffold/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: Scout Create Scaffold
2+
name: scout-create-scaffold
33
description: Generate or repair a Scout test scaffold for a Kibana plugin/package (test/scout*/{api,ui} Playwright configs, fixtures, example specs). Use when you need the initial Scout directory structure; prefer `node scripts/scout.js generate` with flags for non-interactive/LLM execution.
44
---
55

.agent/skills/scout-migrate-from-ftr/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: Scout Migrate From FTR
2+
name: scout-migrate-from-ftr
33
description: Use when migrating Kibana Functional Test Runner (FTR) tests to Scout, including decisions about UI vs API tests, mapping FTR services/page objects/hooks to Scout fixtures, and splitting loadTestFile patterns.
44
---
55

.agent/skills/scout-ui-testing/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: Scout UI Testing
2+
name: scout-ui-testing
33
description: Use when creating, updating, debugging, or reviewing Scout UI tests in Kibana (Playwright + Scout fixtures), including page objects, browser authentication, parallel UI tests (spaceTest/scoutSpace), a11y checks, and flake control.
44
---
55

.buildkite/ftr_platform_stateful_configs.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@ enabled:
102102
- src/platform/test/functional/apps/kibana_overview/config.ts
103103
- src/platform/test/functional/apps/management/config.ts
104104
- src/platform/test/functional/apps/saved_objects_management/config.ts
105-
- src/platform/test/functional/apps/sharing/config.ts
106105
- src/platform/test/functional/apps/status_page/config.ts
107106
- src/platform/test/functional/apps/visualize/group1/config.ts
108107
- src/platform/test/functional/apps/visualize/group2/config.ts
@@ -293,7 +292,6 @@ enabled:
293292
- x-pack/platform/test/functional_cloud/intercepts.config.ts
294293
- x-pack/platform/test/licensing_plugin/config.public.ts
295294
- x-pack/platform/test/licensing_plugin/config.ts
296-
- x-pack/platform/test/product_intercepts_functional/config.ts
297295
- x-pack/platform/test/reporting_api_integration/reporting_and_security.config.ts
298296
- x-pack/platform/test/reporting_api_integration/reporting_without_security.config.ts
299297
- x-pack/platform/test/reporting_functional/reporting_and_security.config.ts
@@ -379,7 +377,6 @@ enabled:
379377
- x-pack/performance/journeys_e2e/cloud_security_dashboard.ts
380378
- x-pack/performance/journeys_e2e/apm_service_inventory.ts
381379
- x-pack/performance/journeys_e2e/infra_hosts_view.ts
382-
- x-pack/platform/test/custom_branding/config.ts
383380
# configs migrated to the new Kibana architecture
384381
- x-pack/platform/test/api_integration/apis/aiops/config.ts
385382
- x-pack/platform/test/api_integration/apis/cases/config.ts

.buildkite/pipeline-resource-definitions/kibana-fips-daily.yml

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,6 @@ spec:
3535
cronline: 0 5 * * * America/New_York
3636
env:
3737
TEST_ENABLE_FIPS_VERSION: '140-2'
38-
'140-2 Daily build (9.3)':
39-
message: 140-2 Daily build
40-
branch: '9.3'
41-
cronline: 0 5 * * * America/New_York
42-
env:
43-
TEST_ENABLE_FIPS_VERSION: '140-2'
4438
'140-2 Daily build (8.19)':
4539
message: 140-2 Daily build
4640
branch: '8.19'
@@ -53,12 +47,6 @@ spec:
5347
cronline: 0 5 * * * America/New_York
5448
env:
5549
TEST_ENABLE_FIPS_VERSION: '140-3'
56-
'140-3 Daily build (9.3)':
57-
message: 140-3 Daily build
58-
branch: '9.3'
59-
cronline: 0 5 * * * America/New_York
60-
env:
61-
TEST_ENABLE_FIPS_VERSION: '140-3'
6250
'140-3 Daily build (8.19)':
6351
message: 140-3 Daily build
6452
branch: '8.19'

.buildkite/pipeline-resource-definitions/kibana-uiam-verify-and-promote.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ spec:
4646
kibana-tech-leads:
4747
access_level: MANAGE_BUILD_AND_READ
4848
schedules:
49-
Weekly build:
50-
cronline: 0 9 * * 1 America/New_York
51-
message: Weekly build
49+
Daily build:
50+
cronline: 0 9 * * * America/New_York
51+
message: Daily build
5252
branch: main
5353
tags:
5454
- kibana

.buildkite/pipeline-utils/ci-stats/pick_test_group_run_order.ts

Lines changed: 39 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,38 @@ import type { TestGroupRunOrderResponse } from './client';
2121
import { CiStatsClient } from './client';
2222

2323
import DISABLED_JEST_CONFIGS from '../../disabled_jest_configs.json';
24+
import SHARDED_JEST_CONFIGS from '../../sharded_jest_configs.json';
2425
import { serverless, stateful } from '../../ftr_configs_manifests.json';
2526
import { filterEmptyJestConfigs } from './get_tests_from_config';
2627
import { collectEnvFromLabels, expandAgentQueue, getRequiredEnv } from '#pipeline-utils';
2728

29+
const SHARD_ANNOTATION_SEP = '||shard=';
30+
31+
/**
32+
* Expands configs that appear in the shard map into N shard-annotated entries.
33+
* For example, if `fleet/jest.integration.config.js` has 2 shards, it becomes:
34+
* - `fleet/jest.integration.config.js||shard=1/2`
35+
* - `fleet/jest.integration.config.js||shard=2/2`
36+
* Configs not in the shard map are passed through unchanged.
37+
*/
38+
function expandShardedJestConfigs(configs: string[]): string[] {
39+
const shardMap = SHARDED_JEST_CONFIGS as Record<string, number>;
40+
const expanded: string[] = [];
41+
42+
for (const config of configs) {
43+
const shardCount = shardMap[config];
44+
if (shardCount && shardCount > 1) {
45+
for (let i = 1; i <= shardCount; i++) {
46+
expanded.push(`${config}${SHARD_ANNOTATION_SEP}${i}/${shardCount}`);
47+
}
48+
} else {
49+
expanded.push(config);
50+
}
51+
}
52+
53+
return expanded;
54+
}
55+
2856
const ALL_FTR_MANIFEST_REL_PATHS = serverless.concat(stateful);
2957

3058
type RunGroup = TestGroupRunOrderResponse['types'][0];
@@ -45,14 +73,14 @@ export async function pickTestGroupRunOrder() {
4573

4674
const JEST_MAX_MINUTES = process.env.JEST_MAX_MINUTES
4775
? parseFloat(process.env.JEST_MAX_MINUTES)
48-
: 40;
76+
: 35;
4977
if (Number.isNaN(JEST_MAX_MINUTES)) {
5078
throw new Error(`invalid JEST_MAX_MINUTES: ${process.env.JEST_MAX_MINUTES}`);
5179
}
5280

5381
const FUNCTIONAL_MAX_MINUTES = process.env.FUNCTIONAL_MAX_MINUTES
5482
? parseFloat(process.env.FUNCTIONAL_MAX_MINUTES)
55-
: 37;
83+
: 30;
5684
if (Number.isNaN(FUNCTIONAL_MAX_MINUTES)) {
5785
throw new Error(`invalid FUNCTIONAL_MAX_MINUTES: ${process.env.FUNCTIONAL_MAX_MINUTES}`);
5886
}
@@ -167,18 +195,22 @@ export async function pickTestGroupRunOrder() {
167195
ignore: [...DISABLED_JEST_CONFIGS, '**/node_modules/**'],
168196
})
169197
: [];
170-
const jestUnitConfigs = await filterEmptyJestConfigs(
198+
const jestUnitConfigsFiltered = await filterEmptyJestConfigs(
171199
jestUnitConfigsWithEmpties,
172200
os.availableParallelism()
173201
);
202+
// Expand sharded unit configs (e.g. cases/jest.config.js) into shard-annotated entries
203+
const jestUnitConfigs = expandShardedJestConfigs(jestUnitConfigsFiltered);
174204

175-
const jestIntegrationConfigs = LIMIT_CONFIG_TYPE.includes('integration')
176-
? globby.sync(getJestConfigGlobs(['**/jest.integration.config.*js', '!**/__fixtures__/**']), {
205+
const jestIntegrationConfigsRaw = LIMIT_CONFIG_TYPE.includes('integration')
206+
? globby.sync(getJestConfigGlobs(['**/jest.integration.config.js', '!**/__fixtures__/**']), {
177207
cwd: process.cwd(),
178208
absolute: false,
179209
ignore: [...DISABLED_JEST_CONFIGS, '**/node_modules/**'],
180210
})
181211
: [];
212+
// Expand sharded integration configs into shard-annotated entries
213+
const jestIntegrationConfigs = expandShardedJestConfigs(jestIntegrationConfigsRaw);
182214

183215
if (!ftrConfigsByQueue.size && !jestUnitConfigs.length && !jestIntegrationConfigs.length) {
184216
throw new Error('unable to find any unit, integration, or FTR configs');
@@ -357,7 +389,8 @@ export async function pickTestGroupRunOrder() {
357389
label: 'Jest Integration Tests',
358390
command: getRequiredEnv('JEST_INTEGRATION_SCRIPT'),
359391
parallelism: integration.count,
360-
timeout_in_minutes: 120,
392+
// TODO: Reduce once we have identified the cause of random long-running tests
393+
timeout_in_minutes: 75,
361394
key: 'jest-integration',
362395
agents: expandAgentQueue('n2-4-spot', 105),
363396
depends_on: JEST_CONFIGS_DEPS,

0 commit comments

Comments
 (0)