Sustainable Kibana Architecture: Move modules owned by @elastic/security-threat-hunting-explore (#202852)

## Summary

This PR aims at relocating some of the Kibana modules (plugins and
packages) into a new folder structure, according to the _Sustainable
Kibana Architecture_ initiative.

> [!IMPORTANT]
> * We kindly ask you to:
> * Manually fix the errors in the error section below (if there are
any).
> * Search for the `packages[\/\\]` and `plugins[\/\\]` patterns in the
source code (Babel and Eslint config files), and update them
appropriately.
> * Manually review
`.buildkite/scripts/pipelines/pull_request/pipeline.ts` to ensure that
any CI pipeline customizations continue to be correctly applied after
the changed path names
> * Review all of the updated files, specially the `.ts` and `.js` files
listed in the sections below, as some of them contain relative paths
that have been updated.
> * Think of potential impact of the move, including tooling and
configuration files that can be pointing to the relocated modules. E.g.:
>     * customised eslint rules
>     * docs pointing to source code

> [!NOTE]
> * This PR has been auto-generated.
> * Any manual contributions will be lost if the 'relocate' script is
re-run.
> * Try to obtain the missing reviews / approvals before applying manual
fixes, and/or keep your changes in a .patch / git stash.
> * Please use
[#sustainable_kibana_architecture](https://elastic.slack.com/archives/C07TCKTA22E)
Slack channel for feedback.

#### 1 plugin(s) are going to be relocated:

| Id | Target folder |
| -- | ------------- |
| `@kbn/ecs-data-quality-dashboard-plugin` |
`x-pack/solutions/security/plugins/ecs_data_quality_dashboard` |




#### 8 packages(s) are going to be relocated:

| Id | Target folder |
| -- | ------------- |
| `@kbn/cell-actions` | `src/platform/packages/shared/kbn-cell-actions`
|
| `@kbn/ecs-data-quality-dashboard` |
`x-pack/solutions/security/packages/ecs_data_quality_dashboard` |
| `@kbn/security-solution-features` |
`x-pack/solutions/security/packages/features` |
| `@kbn/security-solution-navigation` |
`x-pack/solutions/security/packages/navigation` |
| `@kbn/security-solution-side-nav` |
`x-pack/solutions/security/packages/side_nav` |
| `@kbn/security-solution-storybook-config` |
`x-pack/solutions/security/packages/storybook/config` |
| `@kbn/security-solution-upselling` |
`x-pack/solutions/security/packages/upselling` |
| `@kbn/securitysolution-ecs` |
`src/platform/packages/shared/kbn-securitysolution-ecs` |


<details >
<summary>Updated references</summary>

```
./.eslintrc.js
./.i18nrc.json
./docs/developer/plugin-list.asciidoc
./package.json
./packages/kbn-repo-packages/package-map.json
./packages/kbn-ts-projects/config-paths.json
./src/dev/storybook/aliases.ts
./src/platform/packages/shared/kbn-cell-actions/jest.config.js
./src/platform/packages/shared/kbn-securitysolution-ecs/jest.config.js
./tsconfig.base.json
./x-pack/.i18nrc.json
./x-pack/solutions/security/plugins/ecs_data_quality_dashboard/jest.config.js
./yarn.lock
```

</details><details >
<summary>Updated relative paths</summary>

```
src/platform/packages/shared/kbn-cell-actions/jest.config.js:12
src/platform/packages/shared/kbn-cell-actions/tsconfig.json:2
src/platform/packages/shared/kbn-securitysolution-ecs/jest.config.js:12
src/platform/packages/shared/kbn-securitysolution-ecs/tsconfig.json:2
x-pack/solutions/security/plugins/ecs_data_quality_dashboard/jest.config.js:15
x-pack/solutions/security/plugins/ecs_data_quality_dashboard/tsconfig.json:12
x-pack/solutions/security/plugins/ecs_data_quality_dashboard/tsconfig.json:2
```

</details>

---------

Co-authored-by: Karen Grigoryan <karen.grigoryan@elastic.co>
This commit is contained in:
Gerard Soldevila 2024-12-13 19:46:30 +01:00 committed by GitHub
parent 36b344a4c5
commit f144078712
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
169 changed files with 44 additions and 44 deletions

View file

@ -298,7 +298,7 @@ const getPipeline = (filename: string, removeSteps = true) => {
/^packages\/kbn-safer-lodash-set/,
/^packages\/kbn-search-types/,
/^packages\/kbn-securitysolution-.*/,
/^packages\/kbn-securitysolution-ecs/,
/^src\/platform\/packages\/shared\/kbn-securitysolution-ecs/,
/^packages\/kbn-securitysolution-io-ts-alerting-types/,
/^packages\/kbn-securitysolution-io-ts-list-types/,
/^packages\/kbn-securitysolution-list-hooks/,

View file

@ -1098,7 +1098,7 @@ module.exports = {
{
// front end and common typescript and javascript files only
files: [
'x-pack/plugins/ecs_data_quality_dashboard/common/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/plugins/ecs_data_quality_dashboard/common/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/plugins/elastic_assistant/common/**/*.{js,mjs,ts,tsx}',
'x-pack/platform/packages/shared/kbn-elastic-assistant/**/*.{js,mjs,ts,tsx}',
'x-pack/platform/packages/shared/kbn-elastic-assistant-common/**/*.{js,mjs,ts,tsx}',
@ -1113,7 +1113,7 @@ module.exports = {
'x-pack/solutions/security/plugins/timelines/common/**/*.{js,mjs,ts,tsx}',
'x-pack/plugins/cases/public/**/*.{js,mjs,ts,tsx}',
'x-pack/plugins/cases/common/**/*.{js,mjs,ts,tsx}',
'packages/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
'src/platform/packages/shared/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
],
rules: {
'import/no-nodejs-modules': 'error',
@ -1134,7 +1134,7 @@ module.exports = {
// We use this section to add rules in which we do not want to apply to test files.
// This should be a very small set as most linter rules are useful for tests as well.
files: [
'x-pack/plugins/ecs_data_quality_dashboard/**/*.{ts,tsx}',
'x-pack/solutions/security/plugins/ecs_data_quality_dashboard/**/*.{ts,tsx}',
'x-pack/solutions/security/plugins/elastic_assistant/**/*.{ts,tsx}',
'x-pack/platform/plugins/shared/integration_assistant/**/*.{ts,tsx}',
'x-pack/platform/packages/shared/kbn-elastic-assistant/**/*.{ts,tsx}',
@ -1146,10 +1146,10 @@ module.exports = {
'x-pack/plugins/security_solution_serverless/**/*.{ts,tsx}',
'x-pack/solutions/security/plugins/timelines/**/*.{ts,tsx}',
'x-pack/plugins/cases/**/*.{ts,tsx}',
'packages/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
'src/platform/packages/shared/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
],
excludedFiles: [
'x-pack/plugins/ecs_data_quality_dashboard/**/*.{test,mock,test_helper}.{ts,tsx}',
'x-pack/solutions/security/plugins/ecs_data_quality_dashboard/**/*.{test,mock,test_helper}.{ts,tsx}',
'x-pack/solutions/security/plugins/elastic_assistant/**/*.{test,mock,test_helper}.{ts,tsx}',
'x-pack/platform/plugins/shared/integration_assistant/**/*.{test,mock,test_helper}.{ts,tsx}',
'x-pack/platform/packages/shared/kbn-elastic-assistant/**/*.{test,mock,test_helper}.{ts,tsx}',
@ -1161,7 +1161,7 @@ module.exports = {
'x-pack/plugins/security_solution_serverless/**/*.{test,mock,test_helper}.{ts,tsx}',
'x-pack/solutions/security/plugins/timelines/**/*.{test,mock,test_helper}.{ts,tsx}',
'x-pack/plugins/cases/**/*.{test,mock,test_helper}.{ts,tsx}',
'packages/kbn-cell-actions/**/*.{test,mock,test_helper}.{ts,tsx}',
'src/platform/packages/shared/kbn-cell-actions/**/*.{test,mock,test_helper}.{ts,tsx}',
],
rules: {
'@typescript-eslint/no-non-null-assertion': 'error',
@ -1170,7 +1170,7 @@ module.exports = {
{
// typescript only for front and back end
files: [
'x-pack/plugins/ecs_data_quality_dashboard/**/*.{ts,tsx}',
'x-pack/solutions/security/plugins/ecs_data_quality_dashboard/**/*.{ts,tsx}',
'x-pack/solutions/security/plugins/elastic_assistant/**/*.{ts,tsx}',
'x-pack/platform/plugins/shared/integration_assistant/**/*.{ts,tsx}',
'x-pack/platform/packages/shared/kbn-elastic-assistant/**/*.{ts,tsx}',
@ -1182,7 +1182,7 @@ module.exports = {
'x-pack/plugins/security_solution_serverless/**/*.{ts,tsx}',
'x-pack/solutions/security/plugins/timelines/**/*.{ts,tsx}',
'x-pack/plugins/cases/**/*.{ts,tsx}',
'packages/kbn-cell-actions/**/*.{ts,tsx}',
'src/platform/packages/shared/kbn-cell-actions/**/*.{ts,tsx}',
],
rules: {
'@typescript-eslint/no-this-alias': 'error',
@ -1204,7 +1204,7 @@ module.exports = {
{
// typescript and javascript for front and back end
files: [
'x-pack/plugins/ecs_data_quality_dashboard/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/plugins/ecs_data_quality_dashboard/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/plugins/elastic_assistant/**/*.{js,mjs,ts,tsx}',
'x-pack/platform/plugins/shared/integration_assistant/**/*.{js,mjs,ts,tsx}',
'x-pack/platform/packages/shared/kbn-elastic-assistant/**/*.{js,mjs,ts,tsx}',
@ -1217,7 +1217,7 @@ module.exports = {
'x-pack/solutions/security/plugins/timelines/**/*.{js,mjs,ts,tsx}',
'x-pack/plugins/cases/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/packages/data-stream-adapter/**/*.{js,mjs,ts,tsx}',
'packages/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
'src/platform/packages/shared/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
],
plugins: ['eslint-plugin-node', 'react'],
env: {
@ -1310,14 +1310,14 @@ module.exports = {
{
files: [
'x-pack/plugins/cases/**/*.{js,mjs,ts,tsx}',
'x-pack/plugins/ecs_data_quality_dashboard/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/plugins/ecs_data_quality_dashboard/**/*.{js,mjs,ts,tsx}',
'x-pack/plugins/security_solution/**/*.{js,mjs,ts,tsx}',
'x-pack/plugins/security_solution_ess/**/*.{js,mjs,ts,tsx}',
'x-pack/plugins/security_solution_serverless/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/packages/data-stream-adapter/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/packages/features/**/*.{js,mjs,ts,tsx}',
'x-pack/solutions/security/packages/navigation/**/*.{js,mjs,ts,tsx}',
'packages/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
'src/platform/packages/shared/kbn-cell-actions/**/*.{js,mjs,ts,tsx}',
],
rules: {
'@typescript-eslint/consistent-type-imports': 'error',

6
.github/CODEOWNERS vendored
View file

@ -297,7 +297,6 @@ packages/kbn-calculate-width-from-char-count @elastic/kibana-visualizations
packages/kbn-capture-oas-snapshot-cli @elastic/kibana-core
packages/kbn-cases-components @elastic/response-ops
packages/kbn-cbor @elastic/kibana-operations
packages/kbn-cell-actions @elastic/security-threat-hunting-explore
packages/kbn-chart-icons @elastic/kibana-visualizations
packages/kbn-check-mappings-update-cli @elastic/kibana-core
packages/kbn-check-prod-native-modules-cli @elastic/kibana-operations
@ -457,7 +456,6 @@ packages/kbn-search-response-warnings @elastic/kibana-data-discovery
packages/kbn-search-types @elastic/kibana-data-discovery
packages/kbn-security-hardening @elastic/kibana-security
packages/kbn-securitysolution-autocomplete @elastic/security-detection-engine
packages/kbn-securitysolution-ecs @elastic/security-threat-hunting-explore
packages/kbn-securitysolution-endpoint-exceptions-common @elastic/security-detection-engine
packages/kbn-securitysolution-es-utils @elastic/security-detection-engine
packages/kbn-securitysolution-exception-list-components @elastic/security-detection-engine
@ -604,6 +602,7 @@ src/platform/packages/shared/deeplinks/management @elastic/kibana-management
src/platform/packages/shared/deeplinks/ml @elastic/ml-ui
src/platform/packages/shared/deeplinks/observability @elastic/obs-ux-management-team
src/platform/packages/shared/kbn-avc-banner @elastic/security-defend-workflows
src/platform/packages/shared/kbn-cell-actions @elastic/security-threat-hunting-explore
src/platform/packages/shared/kbn-doc-links @elastic/docs
src/platform/packages/shared/kbn-esql-ast @elastic/kibana-esql
src/platform/packages/shared/kbn-esql-utils @elastic/kibana-esql
@ -616,6 +615,7 @@ src/platform/packages/shared/kbn-management/settings/field_definition @elastic/k
src/platform/packages/shared/kbn-management/settings/types @elastic/kibana-management
src/platform/packages/shared/kbn-management/settings/utilities @elastic/kibana-management
src/platform/packages/shared/kbn-osquery-io-ts-types @elastic/security-asset-management
src/platform/packages/shared/kbn-securitysolution-ecs @elastic/security-threat-hunting-explore
src/platform/packages/shared/kbn-server-route-repository @elastic/obs-knowledge-team
src/platform/packages/shared/kbn-server-route-repository-client @elastic/obs-knowledge-team
src/platform/packages/shared/kbn-server-route-repository-utils @elastic/obs-knowledge-team
@ -897,7 +897,6 @@ x-pack/plugins/dashboard_enhanced @elastic/kibana-presentation
x-pack/plugins/data_quality @elastic/obs-ux-logs-team
x-pack/plugins/discover_enhanced @elastic/kibana-data-discovery
x-pack/plugins/drilldowns/url_drilldown @elastic/appex-sharedux
x-pack/plugins/ecs_data_quality_dashboard @elastic/security-threat-hunting-explore
x-pack/plugins/embeddable_enhanced @elastic/kibana-presentation
x-pack/plugins/encrypted_saved_objects @elastic/kibana-security
x-pack/plugins/enterprise_search @elastic/search-kibana
@ -998,6 +997,7 @@ x-pack/solutions/security/packages/navigation @elastic/security-threat-hunting-e
x-pack/solutions/security/packages/side_nav @elastic/security-threat-hunting-explore
x-pack/solutions/security/packages/storybook/config @elastic/security-threat-hunting-explore
x-pack/solutions/security/packages/upselling @elastic/security-threat-hunting-explore
x-pack/solutions/security/plugins/ecs_data_quality_dashboard @elastic/security-threat-hunting-explore
x-pack/solutions/security/plugins/elastic_assistant @elastic/security-generative-ai
x-pack/solutions/security/plugins/threat_intelligence @elastic/security-threat-hunting-investigations
x-pack/solutions/security/plugins/timelines @elastic/security-threat-hunting-investigations

View file

@ -11,7 +11,7 @@
"bfetch": "src/plugins/bfetch",
"bfetchError": "packages/kbn-bfetch-error",
"cases": ["packages/kbn-cases-components"],
"cellActions": "packages/kbn-cell-actions",
"cellActions": "src/platform/packages/shared/kbn-cell-actions",
"charts": "src/plugins/charts",
"console": "src/platform/plugins/shared/console",
"contentManagement": "packages/content-management",

View file

@ -553,7 +553,7 @@ Plugin server-side only. Plugin has three main functions:
|Contains the enhancements to the OSS discover app.
|{kib-repo}blob/{branch}/x-pack/plugins/ecs_data_quality_dashboard/README.md[ecsDataQualityDashboard]
|{kib-repo}blob/{branch}/x-pack/solutions/security/plugins/ecs_data_quality_dashboard/README.md[ecsDataQualityDashboard]
|This plugin implements (server) APIs used to render the content of the Data Quality dashboard.

View file

@ -205,7 +205,7 @@
"@kbn/cases-components": "link:packages/kbn-cases-components",
"@kbn/cases-plugin": "link:x-pack/plugins/cases",
"@kbn/cbor": "link:packages/kbn-cbor",
"@kbn/cell-actions": "link:packages/kbn-cell-actions",
"@kbn/cell-actions": "link:src/platform/packages/shared/kbn-cell-actions",
"@kbn/chart-expressions-common": "link:src/plugins/chart_expressions/common",
"@kbn/chart-icons": "link:packages/kbn-chart-icons",
"@kbn/charts-plugin": "link:src/plugins/charts",
@ -464,7 +464,7 @@
"@kbn/dom-drag-drop": "link:packages/kbn-dom-drag-drop",
"@kbn/ebt-tools": "link:packages/kbn-ebt-tools",
"@kbn/ecs-data-quality-dashboard": "link:x-pack/solutions/security/packages/ecs_data_quality_dashboard",
"@kbn/ecs-data-quality-dashboard-plugin": "link:x-pack/plugins/ecs_data_quality_dashboard",
"@kbn/ecs-data-quality-dashboard-plugin": "link:x-pack/solutions/security/plugins/ecs_data_quality_dashboard",
"@kbn/elastic-agent-utils": "link:packages/kbn-elastic-agent-utils",
"@kbn/elastic-assistant": "link:x-pack/platform/packages/shared/kbn-elastic-assistant",
"@kbn/elastic-assistant-common": "link:x-pack/platform/packages/shared/kbn-elastic-assistant-common",
@ -841,7 +841,7 @@
"@kbn/security-ui-components": "link:x-pack/packages/security/ui_components",
"@kbn/securitysolution-autocomplete": "link:packages/kbn-securitysolution-autocomplete",
"@kbn/securitysolution-data-table": "link:x-pack/solutions/security/packages/data_table",
"@kbn/securitysolution-ecs": "link:packages/kbn-securitysolution-ecs",
"@kbn/securitysolution-ecs": "link:src/platform/packages/shared/kbn-securitysolution-ecs",
"@kbn/securitysolution-endpoint-exceptions-common": "link:packages/kbn-securitysolution-endpoint-exceptions-common",
"@kbn/securitysolution-es-utils": "link:packages/kbn-securitysolution-es-utils",
"@kbn/securitysolution-exception-list-components": "link:packages/kbn-securitysolution-exception-list-components",

View file

@ -15,7 +15,7 @@ export const storybookAliases = {
apm: 'x-pack/plugins/observability_solution/apm/.storybook',
canvas: 'x-pack/plugins/canvas/storybook',
cases: 'packages/kbn-cases-components/.storybook',
cell_actions: 'packages/kbn-cell-actions/.storybook',
cell_actions: 'src/platform/packages/shared/kbn-cell-actions/.storybook',
cloud_security_posture_packages: 'x-pack/packages/kbn-cloud-security-posture/storybook/config',
cloud: 'packages/cloud/.storybook',
coloring: 'packages/kbn-coloring/.storybook',

View file

@ -9,6 +9,6 @@
module.exports = {
preset: '@kbn/test',
rootDir: '../..',
roots: ['<rootDir>/packages/kbn-cell-actions'],
rootDir: '../../../../..',
roots: ['<rootDir>/src/platform/packages/shared/kbn-cell-actions'],
};

View file

@ -1,5 +1,5 @@
{
"extends": "../../tsconfig.base.json",
"extends": "../../../../../tsconfig.base.json",
"compilerOptions": {
"outDir": "target/types",
"types": [

View file

@ -9,6 +9,6 @@
module.exports = {
preset: '@kbn/test',
rootDir: '../..',
roots: ['<rootDir>/packages/kbn-securitysolution-ecs'],
rootDir: '../../../../..',
roots: ['<rootDir>/src/platform/packages/shared/kbn-securitysolution-ecs'],
};

Some files were not shown because too many files have changed in this diff Show more