Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sustainable Kibana Architecture: Move modules owned by @elastic/obs-ux-infra_services-team #202830

Open
wants to merge 14 commits into
base: main
Choose a base branch
from

Conversation

gsoldevila
Copy link
Contributor

@gsoldevila gsoldevila commented Dec 3, 2024

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 Slack channel for feedback.

Are you trying to rebase this PR to solve merge conflicts? Please follow the steps describe here.

6 plugin(s) are going to be relocated:

Id Target folder
@kbn/apm-data-access-plugin x-pack/solutions/observability/plugins/apm_data_access
@kbn/apm-plugin x-pack/solutions/observability/plugins/apm
@kbn/inventory-plugin x-pack/solutions/observability/plugins/inventory
@kbn/metrics-data-access-plugin x-pack/solutions/observability/plugins/metrics_data_access
@kbn/profiling-data-access-plugin x-pack/solutions/observability/plugins/profiling_data_access
@kbn/profiling-plugin x-pack/solutions/observability/plugins/profiling

6 packages(s) are going to be relocated:

Id Target folder
@kbn/apm-data-view src/platform/packages/shared/kbn-apm-data-view
@kbn/apm-types x-pack/solutions/observability/packages/kbn-apm-types
@kbn/apm-utils src/platform/packages/shared/kbn-apm-utils
@kbn/lens-embeddable-utils src/platform/packages/shared/kbn-lens-embeddable-utils
@kbn/profiling-utils src/platform/packages/shared/kbn-profiling-utils
@kbn/shared-svg src/platform/packages/shared/kbn-shared-svg
Updated references
./.buildkite/ftr_oblt_stateful_configs.yml
./.buildkite/scripts/steps/functional/apm_cypress.sh
./.buildkite/scripts/steps/functional/inventory_cypress.sh
./.buildkite/scripts/steps/functional/profiling_cypress.sh
./.eslintrc.js
./.github/paths-labeller.yml
./.gitignore
./docs/developer/plugin-list.asciidoc
./oas_docs/overlays/alerting.overlays.yaml
./oas_docs/scripts/merge_ess_oas.js
./oas_docs/scripts/merge_serverless_oas.js
./package.json
./packages/kbn-eslint-plugin-i18n/helpers/get_i18n_identifier_from_file_path.test.ts
./packages/kbn-eslint-plugin-telemetry/helpers/get_app_name.test.ts
./packages/kbn-repo-packages/package-map.json
./packages/kbn-ts-projects/config-paths.json
./src/dev/precommit_hook/casing_check_config.js
./src/dev/storybook/aliases.ts
./src/platform/packages/shared/kbn-lens-embeddable-utils/jest.config.js
./src/platform/packages/shared/kbn-profiling-utils/jest.config.js
./src/platform/packages/shared/kbn-shared-svg/jest.config.js
./tsconfig.base.json
./x-pack/.i18nrc.json
./x-pack/platform/packages/shared/ml/aiops_log_rate_analysis/queries/fetch_index_info.ts
./x-pack/platform/packages/shared/ml/aiops_log_rate_analysis/queries/fetch_significant_term_p_values.ts
./x-pack/platform/packages/shared/ml/aiops_log_rate_analysis/queries/fetch_top_terms.ts
./x-pack/platform/plugins/private/data_visualizer/public/application/index_data_visualizer/utils/saved_search_utils.ts
./x-pack/solutions/observability/plugins/apm/common/rules/apm_rule_types.ts
./x-pack/solutions/observability/plugins/apm/dev_docs/apm_queries.md
./x-pack/solutions/observability/plugins/apm/dev_docs/linting.md
./x-pack/solutions/observability/plugins/apm/dev_docs/local_setup.md
./x-pack/solutions/observability/plugins/apm/dev_docs/telemetry.md
./x-pack/solutions/observability/plugins/apm/dev_docs/testing.md
./x-pack/solutions/observability/plugins/apm/dev_docs/updating_functional_tests_archives.md
./x-pack/solutions/observability/plugins/apm/dev_docs/vscode_setup.md
./x-pack/solutions/observability/plugins/apm/ftr_e2e/README.md
./x-pack/solutions/observability/plugins/apm/jest.config.js
./x-pack/solutions/observability/plugins/apm/scripts/infer_route_return_types/index.ts
./x-pack/solutions/observability/plugins/apm/scripts/precommit.js
./x-pack/solutions/observability/plugins/apm/scripts/telemetry/main.ts
./x-pack/solutions/observability/plugins/apm_data_access/jest.config.js
./x-pack/solutions/observability/plugins/exploratory_view/common/annotations.ts
./x-pack/solutions/observability/plugins/inventory/README.md
./x-pack/solutions/observability/plugins/inventory/jest.config.js
./x-pack/solutions/observability/plugins/metrics_data_access/jest.config.js
./x-pack/solutions/observability/plugins/observability/common/annotations.ts
./x-pack/solutions/observability/plugins/profiling/README.md
./x-pack/solutions/observability/plugins/profiling/e2e/README.md
./x-pack/solutions/observability/plugins/profiling/jest.config.js
./x-pack/solutions/observability/plugins/profiling_data_access/jest.config.js
./x-pack/solutions/security/plugins/security_solution/server/utils/build_query/calculate_timeseries_interval.ts
./yarn.lock
.github/CODEOWNERS
Updated relative paths
src/platform/packages/shared/kbn-apm-data-view/tsconfig.json:2
src/platform/packages/shared/kbn-apm-utils/tsconfig.json:2
src/platform/packages/shared/kbn-lens-embeddable-utils/jest.config.js:12
src/platform/packages/shared/kbn-lens-embeddable-utils/tsconfig.json:2
src/platform/packages/shared/kbn-profiling-utils/jest.config.js:12
src/platform/packages/shared/kbn-profiling-utils/tsconfig.json:2
src/platform/packages/shared/kbn-shared-svg/jest.config.js:12
src/platform/packages/shared/kbn-shared-svg/tsconfig.json:2
x-pack/solutions/observability/packages/kbn-apm-types/tsconfig.json:2
x-pack/solutions/observability/plugins/apm/dev_docs/telemetry.md:17
x-pack/solutions/observability/plugins/apm/dev_docs/telemetry.md:22
x-pack/solutions/observability/plugins/apm/dev_docs/testing.md:130
x-pack/solutions/observability/plugins/apm/dev_docs/testing.md:222
x-pack/solutions/observability/plugins/apm/dev_docs/testing.md:78
x-pack/solutions/observability/plugins/apm/dev_docs/testing.md:96
x-pack/solutions/observability/plugins/apm/dev_docs/vscode_setup.md:42
x-pack/solutions/observability/plugins/apm/ftr_e2e/README.md:3
x-pack/solutions/observability/plugins/apm/ftr_e2e/tsconfig.json:2
x-pack/solutions/observability/plugins/apm/jest.config.js:12
x-pack/solutions/observability/plugins/apm/scripts/infer_route_return_types/index.ts:125
x-pack/solutions/observability/plugins/apm/scripts/precommit.js:15
x-pack/solutions/observability/plugins/apm/scripts/precommit.js:33
x-pack/solutions/observability/plugins/apm/scripts/precommit.js:38
x-pack/solutions/observability/plugins/apm/scripts/precommit.js:50
x-pack/solutions/observability/plugins/apm/scripts/shared/read_kibana_config.ts:16
x-pack/solutions/observability/plugins/apm/tsconfig.json:2
x-pack/solutions/observability/plugins/apm/tsconfig.json:7
x-pack/solutions/observability/plugins/apm_data_access/jest.config.js:12
x-pack/solutions/observability/plugins/apm_data_access/tsconfig.json:2
x-pack/solutions/observability/plugins/apm_data_access/tsconfig.json:6
x-pack/solutions/observability/plugins/inventory/e2e/tsconfig.json:2
x-pack/solutions/observability/plugins/inventory/jest.config.js:10
x-pack/solutions/observability/plugins/inventory/tsconfig.json:2
x-pack/solutions/observability/plugins/inventory/tsconfig.json:7
x-pack/solutions/observability/plugins/metrics_data_access/jest.config.js:10
x-pack/solutions/observability/plugins/metrics_data_access/tsconfig.json:2
x-pack/solutions/observability/plugins/metrics_data_access/tsconfig.json:6
x-pack/solutions/observability/plugins/profiling/README.md:52
x-pack/solutions/observability/plugins/profiling/e2e/README.md:3
x-pack/solutions/observability/plugins/profiling/e2e/tsconfig.json:11
x-pack/solutions/observability/plugins/profiling/e2e/tsconfig.json:2
x-pack/solutions/observability/plugins/profiling/jest.config.js:10
x-pack/solutions/observability/plugins/profiling/tsconfig.json:2
x-pack/solutions/observability/plugins/profiling_data_access/jest.config.js:12
x-pack/solutions/observability/plugins/profiling_data_access/tsconfig.json:2

Copy link
Contributor

github-actions bot commented Dec 3, 2024

A documentation preview will be available soon.

Request a new doc build by commenting
  • Rebuild this PR: run docs-build
  • Rebuild this PR and all Elastic docs: run docs-build rebuild

run docs-build is much faster than run docs-build rebuild. A rebuild should only be needed in rare situations.

If your PR continues to fail for an unknown reason, the doc build pipeline may be broken. Elastic employees can check the pipeline status here.

@gsoldevila gsoldevila added Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc release_note:skip Skip the PR/issue when compiling release notes backport:skip This commit does not require backporting Team:obs-ux-infra_services Observability Infrastructure & Services User Experience Team labels Dec 4, 2024
@gsoldevila gsoldevila marked this pull request as ready for review December 4, 2024 08:32
@gsoldevila gsoldevila requested review from a team as code owners December 4, 2024 08:32
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-core (Team:Core)

@elasticmachine
Copy link
Contributor

Pinging @elastic/obs-ux-infra_services-team (Team:obs-ux-infra_services)

@botelastic botelastic bot added ci:project-deploy-observability Create an Observability project Team:obs-ux-management Observability Management User Experience Team labels Dec 4, 2024
@elasticmachine
Copy link
Contributor

Pinging @elastic/obs-ux-management-team (Team:obs-ux-management)

Copy link
Contributor

github-actions bot commented Dec 4, 2024

🤖 GitHub comments

Expand to view the GitHub comments

Just comment with:

  • /oblt-deploy : Deploy a Kibana instance using the Observability test environments.
  • run docs-build : Re-trigger the docs validation. (use unformatted text in the comment!)

@gsoldevila gsoldevila force-pushed the kbn-team-1309-move-kibana-obs-ux-infra_services-team branch from d144359 to 592847f Compare December 10, 2024 15:34
Copy link
Member

@jasonrhodes jasonrhodes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@gsoldevila I'm concerned because our team (@elastic/obs-ux-management-team) has been requested for review on this almost 8K file PR, but GitHub can't show all of those files.

Screenshot 2024-12-16 at 2 58 11 PM

So when I check the file filter to see which files belong to our team, I'm not sure if there are any?

Screenshot 2024-12-16 at 2 58 17 PM

I don't want to blindly approve this if GitHub is just not able to show us the files that belong to us (if they're included in the 5K files that can't be loaded)... suggestions?

Copy link
Member

@afharo afharo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Core changes LGTM

@rudolf rudolf added the plugin groups Relocate all plugins and packages under their respective platform/solution groups label Dec 18, 2024
Copy link
Contributor

@crespocarlos crespocarlos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I noticed that this folder x-pack/solutions/observability/plugins/Users/gsoldevila/Work/kibana-quaternary/* exists.

Is that correct?

Copy link
Contributor

@crespocarlos crespocarlos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

obs-ux-infra_services changes LGMT. it's mostly about moving files to the new structure. I run a quick test locally and everything looked fine.

Copy link
Member

@jgowdyelastic jgowdyelastic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ML changes LGTM

@gsoldevila
Copy link
Contributor Author

@gsoldevila I'm concerned because our team (@elastic/obs-ux-management-team) has been requested for review on this almost 8K file PR, but GitHub can't show all of those files.

As discussed over Slack, consider using Github desktop to review such big PRs.

@gsoldevila gsoldevila force-pushed the kbn-team-1309-move-kibana-obs-ux-infra_services-team branch from 00d6622 to 71d5463 Compare December 23, 2024 14:13
@gsoldevila gsoldevila requested a review from a team as a code owner December 23, 2024 14:13
@gsoldevila gsoldevila force-pushed the kbn-team-1309-move-kibana-obs-ux-infra_services-team branch from 2ce4469 to e76018b Compare December 23, 2024 15:11
@elasticmachine
Copy link
Contributor

elasticmachine commented Dec 23, 2024

💔 Build Failed

Failed CI Steps

Test Failures

  • [job] [logs] Jest Tests #19 / Get App Name should get the responsible app name from a file path
  • [job] [logs] Jest Tests #19 / Get App Name should get the responsible app name from a file path
  • [job] [logs] FTR Configs #74 / Visualizations - Group 3 lens app - TSVB Open in Lens Table should convert aggregate by to split row dimension

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
apm 5.6MB 5.6MB +29.0B
Unknown metric groups

ESLint disabled line counts

id before after diff
apm 68 52 -16
profiling 18 17 -1
total -17

Total ESLint disabled count

id before after diff
apm 81 65 -16
profiling 21 20 -1
total -17

History

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport:skip This commit does not require backporting ci:project-deploy-observability Create an Observability project plugin groups Relocate all plugins and packages under their respective platform/solution groups release_note:skip Skip the PR/issue when compiling release notes Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc Team:obs-ux-infra_services Observability Infrastructure & Services User Experience Team Team:obs-ux-management Observability Management User Experience Team
Projects
None yet
Development

Successfully merging this pull request may close these issues.