Skip to content

Commit 74f3986

Browse files
[8.19] [Security Solution] Wait for Fleet setup completion in OOM tests (elastic#239900) (elastic#240287)
# Backport This will backport the following commits from `main` to `8.19`: - [[Security Solution] Wait for Fleet setup completion in OOM tests (elastic#239900)](elastic#239900) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Maxim Palenov","email":"[email protected]"},"sourceCommit":{"committedDate":"2025-10-23T13:15:25Z","message":"[Security Solution] Wait for Fleet setup completion in OOM tests (elastic#239900)\n\n**Partially addresses:** https://github.com/elastic/kibana/issues/188090\n\n## Summary\n\nThere is a race condition between Fleet plugin setup and FTR tests performing prebuilt rules package installation. To mitigate the risk of flakiness this PR introduces Fleet plugin setup awaiting in the prebuilt rules OOM tests.","sha":"70d327178de4d436b0dd35e30f8d92d6323b7f38","branchLabelMapping":{"^v9.3.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","Team:Detections and Resp","Team: SecuritySolution","Team:Detection Rule Management","Feature:Prebuilt Detection Rules","backport:version","v9.2.0","v9.1.3","v9.3.0","v8.19.6"],"title":"[Security Solution] Wait for Fleet setup completion in OOM tests","number":239900,"url":"https://github.com/elastic/kibana/pull/239900","mergeCommit":{"message":"[Security Solution] Wait for Fleet setup completion in OOM tests (elastic#239900)\n\n**Partially addresses:** https://github.com/elastic/kibana/issues/188090\n\n## Summary\n\nThere is a race condition between Fleet plugin setup and FTR tests performing prebuilt rules package installation. To mitigate the risk of flakiness this PR introduces Fleet plugin setup awaiting in the prebuilt rules OOM tests.","sha":"70d327178de4d436b0dd35e30f8d92d6323b7f38"}},"sourceBranch":"main","suggestedTargetBranches":["9.2","9.1","8.19"],"targetPullRequestStates":[{"branch":"9.2","label":"v9.2.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"9.1","label":"v9.1.3","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.3.0","branchLabelMappingKey":"^v9.3.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/239900","number":239900,"mergeCommit":{"message":"[Security Solution] Wait for Fleet setup completion in OOM tests (elastic#239900)\n\n**Partially addresses:** https://github.com/elastic/kibana/issues/188090\n\n## Summary\n\nThere is a race condition between Fleet plugin setup and FTR tests performing prebuilt rules package installation. To mitigate the risk of flakiness this PR introduces Fleet plugin setup awaiting in the prebuilt rules OOM tests.","sha":"70d327178de4d436b0dd35e30f8d92d6323b7f38"}},{"branch":"8.19","label":"v8.19.6","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}] BACKPORT--> Co-authored-by: Maxim Palenov <[email protected]>
1 parent 2e9a831 commit 74f3986

File tree

1 file changed

+27
-0
lines changed
  • x-pack/solutions/security/test/security_solution_api_integration/test_suites/detections_response/rules_management/prebuilt_rules/oom_testing/install_prebuilt_rules

1 file changed

+27
-0
lines changed

x-pack/solutions/security/test/security_solution_api_integration/test_suites/detections_response/rules_management/prebuilt_rules/oom_testing/install_prebuilt_rules/install_prebuilt_rules.ts

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ import {
2626
} from '../../../../utils/rules/prebuilt_rules/delete_fleet_packages';
2727
import { deleteAllRules, waitFor } from '../../../../../../config/services/detections_response';
2828

29+
const KIBANA_STATUS_URL = '/api/status';
30+
2931
export default ({ getService }: FtrProviderContext): void => {
3032
const es = getService('es');
3133
const supertest = getService('supertest');
@@ -35,6 +37,31 @@ export default ({ getService }: FtrProviderContext): void => {
3537

3638
describe('@ess @serverless @skipInServerlessMKI Install from mocked prebuilt rule assets', () => {
3739
beforeEach(async () => {
40+
await waitFor(
41+
async () => {
42+
const { body: kibanaStatusResponse } = await supertest
43+
.get(KIBANA_STATUS_URL)
44+
.send()
45+
.expect(200);
46+
47+
if (kibanaStatusResponse.status.plugins.fleet.summary === 'Fleet setup failed') {
48+
throw new Error(
49+
`Fleet setup failed: ${JSON.stringify(
50+
kibanaStatusResponse.status.plugins.fleet,
51+
null,
52+
2
53+
)}`
54+
);
55+
}
56+
57+
return kibanaStatusResponse.status.plugins.fleet.summary === 'Fleet is available';
58+
},
59+
'waitForFleetSetup',
60+
log,
61+
undefined, // maxTimeout - use default
62+
3000 // timeoutWait - wait longer between tries as fleet setup can take some time
63+
);
64+
3865
await deleteAllRules(supertest, log);
3966

4067
await deletePrebuiltRulesFleetPackage({ supertest, es, log, retryService });

0 commit comments

Comments
 (0)