Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[8.x] [Security Solution] Rule Updates in bulk with conflicts (#196776)…
… (#199649) # Backport This will backport the following commits from `main` to `8.x`: - [[Security Solution] Rule Updates in bulk with conflicts (#196776)](#196776) <!--- Backport version: 8.9.8 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sqren/backport) <!--BACKPORT [{"author":{"name":"Juan Pablo Djeredjian","email":"[email protected]"},"sourceCommit":{"committedDate":"2024-11-11T12:29:21Z","message":"[Security Solution] Rule Updates in bulk with conflicts (#196776)\n\nResolves: https://github.com/elastic/kibana/issues/180589\r\n\r\n## Summary\r\n\r\n- Handles bulk updating of rules with conflicts in the Rule Upgrades\r\ntable. See detailed requirements implemented in ticket linked above.\r\n- Changes default `pick_version` of both the `/upgrade/_perform`\r\nendpoint, and of the request payloads for that endpoint from the\r\nfrontend, from `TARGET` to `MERGED`, when the\r\n`isPrebuiltRulesCustomizationEnabled` is `true`.\r\n- **Also:** handles issue in `/upgrade/_perform` endpoint with the\r\n`index` and `data_view_id` fields. See file:\r\n`x-pack/plugins/security_solution/server/lib/detection_engine/prebuilt_rules/api/perform_rule_upgrade/diffable_rule_fields_mappings.ts`.\r\n\r\n**See demo video:**\r\nhttps://www.loom.com/share/90d94d2a8f16442b9a43a425eeab6697\r\n\r\n**New copy in warning modal**\r\n<img width=\"1660\" alt=\"image\"\r\nsrc=\"https://github.com/user-attachments/assets/85632192-142a-4e12-b396-1eb2320ca3f4\">\r\n\r\n**Newly added tooltips:** \r\n\r\n\r\n![image](https://github.com/user-attachments/assets/7ada117e-57a7-4699-ad08-312c734586d9)\r\n\r\n![image](https://github.com/user-attachments/assets/c8ed80ac-c1c3-48f1-8f8e-2433415a6772)\r\n\r\n![image](https://github.com/user-attachments/assets/d77ed6f0-5d65-4933-9012-f6cd153a9350)\r\n\r\n\r\n### Checklist\r\n\r\nDelete any items that are not applicable to this PR.\r\n\r\n- [ ] Any text added follows [EUI's writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\r\nsentence case text and includes [i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n- [ ]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas added for features that require explanation or tutorials\r\n- [ ] Any UI touched in this PR is usable by keyboard only (learn more\r\nabout [keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n\r\n### For maintainers\r\n\r\n- [ ] This was checked for breaking API changes and was [labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#_add_your_labels)\r\n- [ ] This will appear in the **Release Notes** and follow the\r\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by: Nastasha Solomon <[email protected]>\r\nCo-authored-by: Dmitrii <[email protected]>","sha":"99160f52d6a2e0ad4698ca8e5ac40316ebb733c9","branchLabelMapping":{"^v9.0.0$":"main","^v8.17.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","Team:Detections and Resp","Team: SecuritySolution","Team:Detection Rule Management","ui-copy","Feature:Prebuilt Detection Rules","backport:version","v8.17.0"],"number":196776,"url":"https://github.com/elastic/kibana/pull/196776","mergeCommit":{"message":"[Security Solution] Rule Updates in bulk with conflicts (#196776)\n\nResolves: https://github.com/elastic/kibana/issues/180589\r\n\r\n## Summary\r\n\r\n- Handles bulk updating of rules with conflicts in the Rule Upgrades\r\ntable. See detailed requirements implemented in ticket linked above.\r\n- Changes default `pick_version` of both the `/upgrade/_perform`\r\nendpoint, and of the request payloads for that endpoint from the\r\nfrontend, from `TARGET` to `MERGED`, when the\r\n`isPrebuiltRulesCustomizationEnabled` is `true`.\r\n- **Also:** handles issue in `/upgrade/_perform` endpoint with the\r\n`index` and `data_view_id` fields. See file:\r\n`x-pack/plugins/security_solution/server/lib/detection_engine/prebuilt_rules/api/perform_rule_upgrade/diffable_rule_fields_mappings.ts`.\r\n\r\n**See demo video:**\r\nhttps://www.loom.com/share/90d94d2a8f16442b9a43a425eeab6697\r\n\r\n**New copy in warning modal**\r\n<img width=\"1660\" alt=\"image\"\r\nsrc=\"https://github.com/user-attachments/assets/85632192-142a-4e12-b396-1eb2320ca3f4\">\r\n\r\n**Newly added tooltips:** \r\n\r\n\r\n![image](https://github.com/user-attachments/assets/7ada117e-57a7-4699-ad08-312c734586d9)\r\n\r\n![image](https://github.com/user-attachments/assets/c8ed80ac-c1c3-48f1-8f8e-2433415a6772)\r\n\r\n![image](https://github.com/user-attachments/assets/d77ed6f0-5d65-4933-9012-f6cd153a9350)\r\n\r\n\r\n### Checklist\r\n\r\nDelete any items that are not applicable to this PR.\r\n\r\n- [ ] Any text added follows [EUI's writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\r\nsentence case text and includes [i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n- [ ]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas added for features that require explanation or tutorials\r\n- [ ] Any UI touched in this PR is usable by keyboard only (learn more\r\nabout [keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n\r\n### For maintainers\r\n\r\n- [ ] This was checked for breaking API changes and was [labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#_add_your_labels)\r\n- [ ] This will appear in the **Release Notes** and follow the\r\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by: Nastasha Solomon <[email protected]>\r\nCo-authored-by: Dmitrii <[email protected]>","sha":"99160f52d6a2e0ad4698ca8e5ac40316ebb733c9"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","labelRegex":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/196776","number":196776,"mergeCommit":{"message":"[Security Solution] Rule Updates in bulk with conflicts (#196776)\n\nResolves: https://github.com/elastic/kibana/issues/180589\r\n\r\n## Summary\r\n\r\n- Handles bulk updating of rules with conflicts in the Rule Upgrades\r\ntable. See detailed requirements implemented in ticket linked above.\r\n- Changes default `pick_version` of both the `/upgrade/_perform`\r\nendpoint, and of the request payloads for that endpoint from the\r\nfrontend, from `TARGET` to `MERGED`, when the\r\n`isPrebuiltRulesCustomizationEnabled` is `true`.\r\n- **Also:** handles issue in `/upgrade/_perform` endpoint with the\r\n`index` and `data_view_id` fields. See file:\r\n`x-pack/plugins/security_solution/server/lib/detection_engine/prebuilt_rules/api/perform_rule_upgrade/diffable_rule_fields_mappings.ts`.\r\n\r\n**See demo video:**\r\nhttps://www.loom.com/share/90d94d2a8f16442b9a43a425eeab6697\r\n\r\n**New copy in warning modal**\r\n<img width=\"1660\" alt=\"image\"\r\nsrc=\"https://github.com/user-attachments/assets/85632192-142a-4e12-b396-1eb2320ca3f4\">\r\n\r\n**Newly added tooltips:** \r\n\r\n\r\n![image](https://github.com/user-attachments/assets/7ada117e-57a7-4699-ad08-312c734586d9)\r\n\r\n![image](https://github.com/user-attachments/assets/c8ed80ac-c1c3-48f1-8f8e-2433415a6772)\r\n\r\n![image](https://github.com/user-attachments/assets/d77ed6f0-5d65-4933-9012-f6cd153a9350)\r\n\r\n\r\n### Checklist\r\n\r\nDelete any items that are not applicable to this PR.\r\n\r\n- [ ] Any text added follows [EUI's writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing), uses\r\nsentence case text and includes [i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n- [ ]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas added for features that require explanation or tutorials\r\n- [ ] Any UI touched in this PR is usable by keyboard only (learn more\r\nabout [keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n\r\n### For maintainers\r\n\r\n- [ ] This was checked for breaking API changes and was [labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#_add_your_labels)\r\n- [ ] This will appear in the **Release Notes** and follow the\r\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by: Nastasha Solomon <[email protected]>\r\nCo-authored-by: Dmitrii <[email protected]>","sha":"99160f52d6a2e0ad4698ca8e5ac40316ebb733c9"}},{"branch":"8.x","label":"v8.17.0","labelRegex":"^v8.17.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}] BACKPORT--> Co-authored-by: Juan Pablo Djeredjian <[email protected]>
- Loading branch information