mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 17:59:23 -04:00
> Derived from https://github.com/elastic/kibana/pull/153274 for production. ## Summary This PR creates the `serverless` plugin for Kibana Serverless projects.  It uses the methodology proven out in the proof-of-concept (https://github.com/elastic/kibana/pull/153274) and prepares it for production: - Adds chrome style and related API to the `chrome` services. - Creates the `serverless` plugin. - Invokes the new chrome style API for all serverless projects. - Alters `yarn` scripts to support all project types, and switching between them. - Creates the new "Project Switcher" component for use in the new chrome header for Serverless. - Creates a Storybook config for this and future components. - Adds API endpoint to trigger project switching and `Watcher` restarts. <img width="1598" alt="Screenshot 2023-04-26 at 10 44 01 AM" src="https://user-images.githubusercontent.com/297604/234612654-fdcf38ea-8c48-4066-bc85-507f40c984aa.png"> ## Next steps - [x] Creating a PR for enabling/disabling related plugins for Serverless. (https://github.com/elastic/kibana/pull/155583) - [ ] Creating product plugin PR based on https://github.com/elastic/kibana/pull/153274. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
22 lines
No EOL
1,009 B
Text
Executable file
22 lines
No EOL
1,009 B
Text
Executable file
---
|
|
id: serverless/plugin
|
|
slug: /serverless/plugin
|
|
title: Serverless Plugin
|
|
description: The plugin responsible for managing Serverless settings and providing services to all product serverless plugins.
|
|
tags: ['serverless', 'plugin']
|
|
date: 2023-04-23
|
|
---
|
|
|
|

|
|
|
|
a. `serverless.yml` config enables Serverless plugin, provides settings for *all* projects, (e.g. disabling Reporting).
|
|
|
|
b. Product-specific `yml` file enables corresponding Project plugin, provides settings for a specific project, (e.g. disabling Observability).
|
|
|
|
c. Project plugin interacts with Serverless plugin to customize Serverless Kibana.
|
|
|
|
d. Serverless plugin interacts with Kibana Core to customize Classic Kibana.
|
|
|
|
e. Project plugin interacts with corresponding Solution plugin to customize the Solution experience for Serverless.
|
|
|
|
Communication occurs in a *single direction*. While it would be tempting to add a global flag to check if Serverless is enabled, doing so short-circuits the "affecting" model. |