Commit graph

2 commits

Author SHA1 Message Date
Gerard Soldevila
fce686bc88
Sustainable Kibana Architecture: Move modules owned by @elastic/fleet (#202422)
## 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.

Are you trying to rebase this PR to solve merge conflicts? Please follow
the steps describe
[here](https://elastic.slack.com/archives/C07TCKTA22E/p1734019532879269?thread_ts=1734019339.935419&cid=C07TCKTA22E).

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

| Id | Target folder |
| -- | ------------- |
| `@kbn/custom-integrations-plugin` |
`src/platform/plugins/shared/custom_integrations` |
| `@kbn/fleet-plugin` | `x-pack/platform/plugins/shared/fleet` |




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

| Id | Target folder |
| -- | ------------- |
| `@kbn/deeplinks-fleet` |
`src/platform/packages/shared/deeplinks/fleet` |


<details open>
<summary>Script errors</summary>

```
Cannot replace multiple occurrences of "../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/cypress/README.md:122
Cannot replace multiple occurrences of "../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/cypress/README.md:128
Cannot replace multiple occurrences of "../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:12
Cannot replace multiple occurrences of "../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:12
Cannot replace multiple occurrences of "../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:8
Cannot replace multiple occurrences of "../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:8
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/cypress/README.md:122
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/cypress/README.md:128
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
Cannot replace multiple occurrences of "../../.." in the same line, please fix manually:	/Users/pgayvallet/DEV/workspaces/elastic/kibana/x-pack/platform/plugins/shared/fleet/package.json:16
```

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

```
src/platform/packages/shared/deeplinks/fleet/jest.config.js:12
src/platform/packages/shared/deeplinks/fleet/tsconfig.json:2
src/platform/packages/shared/deeplinks/fleet/tsconfig.type_check.json:2
src/platform/plugins/shared/custom_integrations/jest.config.js:12
src/platform/plugins/shared/custom_integrations/tsconfig.json:2
src/platform/plugins/shared/custom_integrations/tsconfig.json:7
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:2
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:20
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:26
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:29
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:32
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:35
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:38
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:41
src/platform/plugins/shared/custom_integrations/tsconfig.type_check.json:9
x-pack/platform/plugins/shared/fleet/cypress.config.js:22
x-pack/platform/plugins/shared/fleet/cypress.config.js:25
x-pack/platform/plugins/shared/fleet/cypress.config.space_awareness.ts:26
x-pack/platform/plugins/shared/fleet/cypress.config.space_awareness.ts:29
x-pack/platform/plugins/shared/fleet/cypress.config.ts:25
x-pack/platform/plugins/shared/fleet/cypress.config.ts:28
x-pack/platform/plugins/shared/fleet/cypress/README.md:122
x-pack/platform/plugins/shared/fleet/cypress/README.md:128
x-pack/platform/plugins/shared/fleet/cypress/reporter_config.json:6
x-pack/platform/plugins/shared/fleet/cypress/reporter_config.json:8
x-pack/platform/plugins/shared/fleet/cypress/tasks/login.ts:21
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.json:2
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.json:7
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.type_check.json:2
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.type_check.json:25
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.type_check.json:28
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.type_check.json:31
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.type_check.json:37
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.type_check.json:40
x-pack/platform/plugins/shared/fleet/cypress/tsconfig.type_check.json:7
x-pack/platform/plugins/shared/fleet/jest.config.js:10
x-pack/platform/plugins/shared/fleet/jest.integration.config.js:10
x-pack/platform/plugins/shared/fleet/package.json:11
x-pack/platform/plugins/shared/fleet/package.json:12
x-pack/platform/plugins/shared/fleet/package.json:15
x-pack/platform/plugins/shared/fleet/package.json:16
x-pack/platform/plugins/shared/fleet/package.json:8
x-pack/platform/plugins/shared/fleet/scripts/create_agent_policies/index.js:8
x-pack/platform/plugins/shared/fleet/scripts/create_agents/index.js:8
x-pack/platform/plugins/shared/fleet/scripts/get_all_packages/index.js:8
x-pack/platform/plugins/shared/fleet/scripts/install_all_packages/index.js:8
x-pack/platform/plugins/shared/fleet/scripts/verify_test_packages/index.js:8
x-pack/platform/plugins/shared/fleet/scripts/verify_test_packages/verify_test_packages.ts:25
x-pack/platform/plugins/shared/fleet/scripts/verify_test_packages/verify_test_packages.ts:26
x-pack/platform/plugins/shared/fleet/scripts/verify_test_packages/verify_test_packages.ts:27
x-pack/platform/plugins/shared/fleet/tsconfig.json:2
x-pack/platform/plugins/shared/fleet/tsconfig.json:22
x-pack/platform/plugins/shared/fleet/tsconfig.json:26
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:102
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:105
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:111
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:114
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:120
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:123
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:126
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:129
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:132
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:135
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:144
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:147
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:150
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:153
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:156
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:159
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:162
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:165
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:168
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:171
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:174
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:177
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:180
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:183
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:186
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:189
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:192
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:195
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:198
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:2
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:201
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:204
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:207
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:210
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:213
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:216
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:219
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:222
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:225
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:228
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:23
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:231
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:234
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:237
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:240
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:243
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:246
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:249
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:252
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:255
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:261
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:264
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:27
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:270
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:273
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:276
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:279
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:30
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:36
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:42
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:45
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:57
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:60
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:63
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:66
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:72
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:75
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:78
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:81
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:84
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:87
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:90
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:93
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:96
x-pack/platform/plugins/shared/fleet/tsconfig.type_check.json:99
```

</details>

---------

Co-authored-by: pgayvallet <pierre.gayvallet@elastic.co>
Co-authored-by: Nicolas Chaulet <nicolas.chaulet@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-12-24 15:32:43 +01:00
Julia Bardi
464f797a73
[Fleet] Prevent concurrent runs of Fleet setup (#183636)
Closes https://github.com/elastic/ingest-dev/issues/3346

- [x] Unit and integration tests are created or updated
- [x] Turn down info logging

The linked issue seems to be caused by multiple kibana instances running
Fleet setup at the same time, trying to create the preconfigured cloud
policy concurrently, and in case of failures, the agent policy is left
with a revision with no inputs, this way preventing fleet-server to
start properly.

See the concurrent errors in the logs:
https://platform-logging.kb.us-west2.gcp.elastic-cloud.com/app/r/s/tUpMP

This fix introduces a `fleet-setup-lock` SO type, which is used to
create a document as a lock by Fleet setup, and is deleted when the
setup is completed. Concurrent calls to Fleet setup will return early if
this doc exists.

To verify:
Run the test `./run_fleet_setup_parallel.sh` from local kibana, and
verify the generated logs that only one of them ran Fleet setup.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-05-31 16:38:51 +02:00