## Summary
This PR introduces the Cloud Security DataTable component, meant to
replace and consolidate the tables used in the Cloud Security plugin
The CloudSecurityDataTable component is a wrapper over the
`<UnifiedDataTable/>` component. We made that decision based on the
number of features it provides for the users plus support from the most
common features such as Flyout, Sort, Filtering, and Pagination to the
most advanced features like Virtualization and DataView integration.
- **Virtualization**: Thanks to Virtualization, users can fetch more
data on the table than the limit of `500`, and also use larger items per
page if desired.
- **DataView integration**: This option allows users to rename Columns
as needed by setting custom labels in the DataView.
- **Column control**: Users can move columns and resize it as needed,
and that settings is saved on the local storage.
- **Row Height control**: Users can modify in the Advanced Settings ->
`discover:rowHeight` the height of the row.
Below is a Matrix comparing the features between the current Findings
table, the Vulnerabilities Data Grid and the new CloudSecurityDataTable.
Feature | CloudSecurity DataTable (new >= 8.11) | Findings Table
(current <= 8.10) | Vulnerabilities Data Grid (current <= 8.10)
-- | -- | -- | --
Tooltip on Cell Hover | ❌ | ✅ | ❌
Column Sorting | ✅ | ✅ | ✅
Multi Column Sorting | ✅ | ❌ | ✅
Column filtering | ✅ | ✅ | ✅
Pagination | ✅ | ✅ | ✅
Rows per page | ✅ | ✅ | ✅
Virtualization (Support to load more data) | ✅ | ❌ | ❌
Custom component on Column Header | ❌ (only custom text) | ✅ | ❌
Additional controls on the left | ✅ | ❌ | ✅
Text truncation | ✅ | ✅ | ✅
Override Style | ✅ (https://github.com/elastic/kibana/pull/166994) | ✅ |
✅
Load more button | ✅ | ❌ | ❌
Resize column | ✅ | ❌ | ✅
Reorder column | ✅ | ❌ | ✅
FullScreen button | ✅ | ❌ | ✅
User-defined row height | ✅ | ❌ | ❌
external pagination control (enables Flyout pagination) | ❌ | ✅ | ✅
user-defined column renaming | ✅ (using DataViews) | ❌ | ❌
### Regressions
There are some regressions such as losing the ability to paginate on the
Flyout and the table pagination is no longer controlled by URL params,
that's because pagination is controlled by an internal state in the
`<UnifiedDataTable/>` component, and we plan to re-enable those features
again in the future by contributing to the `<UnifiedDataTable/>`
component.
### Screenshots

### Videos
Basic Features + Virtualization
b1a61592-e1ae-4baf-9610-3e24c473c17d
d8e6106c-0ca3-4277-b78b-5ca482095ae1
DataView integration
0d583243-bb86-45e4-baa5-dc63253da8f6
Row Height Control
b1d43609-7c8a-4855-ab2f-624c18663579
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Jordan <51442161+JordanSh@users.noreply.github.com>
## Summary
After the introduction of https://github.com/elastic/kibana/pull/167522
which fetches the default ELSER model, we weren't instantiating the
`esStore` within the get Knowledge Base status route with the default
model, so it was falling back to `.elser_model_1` and failing to report
the correct status in the UI (even though all documents were loaded).
Also updated the evaluation endpoint to use the `getElser` default model
when instantiating agents to evaluate.
## Summary
Summarize your PR. If it involves visual changes include a screenshot or
gif.
Adds Cloud Security Telemetry to track all cloud accounts from products
`CSPM`,`KSPM`, and`CNVM`
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary
This PR copies, with limited modifications, functional test suites from
`test/functional` and `x-pack/test/functional`
## Lens Smoke tests
- [x] Smokescreen tests
(x-pack/test/functional/apps/lens/group1/smokescreen.ts)
- [x] Basic vega tests
(test/functional/apps/visualize/group6/_vega_chart.ts)
- [x] Sanity checks for TSDB functionality in Lens
x-pack/test/functional/apps/lens/group4/tsdb.ts
## Convert to Lens
These tests outside of serverless, assume the following vis types are
accessible via the **Visualize editor**, however all the following types
are designated **readonly** in serverless and thus the fn tests fail.
In place of these tests I created the identical visualizations, added
them to a dashboard and exported the SOs. These dashboard and dependent
visualizations are loaded in each respective test, and the assertions
are run on the `Convert to Lens` option from the dashboard. All
assertions are mostly unchanged or achieve the same effect.
- ✅ Agg based -
`x-pack/test/functional/apps/lens/open_in_lens/agg_based`
- ✅ TSVB - `x-pack/test/functional/apps/lens/open_in_lens/tsvb`
- ❌ Dashboard -
`x-pack/test/functional/apps/lens/open_in_lens/dashboard/config.ts`
- Not applicable to serverless env and/or duplicate of other tests.
Closes#162346
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
This PR is a simple update of our versions file after the recent bumps.
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
## Summary
Goal of this PR is to re-enable the serverless tests that require the
login credentials for users that have the pre-defined roles from
serverless assigned to them.
### `@kbn/test` changes
- Added support for `esServerlessOptions` to FTR config. Currently
allows for `resources` to be defined
- `resources` overrides were introduced [in this
PR](https://github.com/elastic/kibana/pull/167087)
- new FTR option will allow for testing serverless with a set of
users/roles that are specific to the project type
### Security Solution Plugin
- Added `esServerlessOptions` to the Defend Workflows cypress
configurations
- Un-skips all serverless specific tests (now that we have support for
users/roles that are specific to the Security project)
- Changed the default username for cypress `login()` task to be
`endpoint_operations_analyst`
- Note that the previously used `endpoint_operations_analyst` role was
also updated to match the definition used for serverless.
- Added new common `fleet_server_services` cli module with reusable
methods for working with fleet server, including generic
`startFleetServer()` method
- New CLI script: `node
x-pack/plugins/security_solution/scripts/endpoint/start_fleet_server.js`
- Starts a fleet server locally (via Docker) and connects it to the
Kibana
- Supports running fleet server locally for serverless as well
Closes#167876
## Summary
This PR fixes alerting rules order. Since the Custom threshold rule is
in the tech preview, we want to show it at the end of the list.
|Rules (trial)|Rules (Permium)|
|---|---|
||
## Summary
Serverless tests failed on tracked branch, on-merge CI build
2 tickets have been created that skip failing tests -
https://github.com/elastic/kibana/issues/167717,
https://github.com/elastic/kibana/issues/167716
But Kibana automatically skipped tests that were running on ESS and were
not failing, but were located in the same file as failed Serverless.
So, no tests from that spec is running now. Eng productivity team will
be looking to address issue with automatically skipped tests
Meanwhile, in this PR
- I separated serverless only and ess only cypress tests to different
files, to avoid issue with skipping wrong tests
- Unskiped ESS tests, that were not failing
- Fixed and unskipped Serverless tests
- move cypress test files in dedicated folders, that were introduced in
https://github.com/elastic/kibana/pull/166501
```
rule_creation/esql_rule_ess.cy.ts
rule_creation/esql_rule_serverless.cy.ts
rule_details/esql_rule.cy.ts
rule_edit/esql_rule.cy.ts
```
---------
Co-authored-by: Ash <1849116+ashokaditya@users.noreply.github.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Closes https://github.com/elastic/kibana/issues/167023.
### Changes
- `EsqlSelector` was created. This component is in charge of rendering
the `Try ESQL` button.
#### Before
<img width="1905" alt="image"
src="9ffc304f-b68c-4871-8524-1239123f5826">
#### After
<img width="1900" alt="image"
src="b95e8739-b93b-47f7-884e-519b73b2ccda">
- It works as a link, so users are able to open it in a new tab if
desired
<img width="1899" alt="image"
src="d6390ba2-5010-4ed5-99cb-4c3f6e099dfe">
- It navigates to discover in `ES|QL` mode
1f083c2d-a06f-4f0b-9cbb-5958edcb9cce
##### For serverless
<img width="1896" alt="image"
src="48712921-85f7-4848-9e71-426bded04913">
- When `discover:enableESQL` is disabled
<img width="1901" alt="image"
src="4267e03b-7b46-4477-813b-65a8a04e6329">
### Missing
UI tests will come as part of a new PR.
---------
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
## Summary
Fixes#167984
This PR reduces the scope of a special handling in case of single value
to only the `percent`/relative palette scenario.
In case of absolute stops passed (aka number palette stops) then the
user configuration should always be respected.
### Checklist
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
Fixes partly: https://github.com/elastic/kibana/issues/167301
## Summary
Serverless functional tests for rules list on O11y.
Checked for flakiness:
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3180
I've skipped 3 tests here. All of them includes failed rules.
In serverless tests we cannot use plugins and create not existing rule
types as we did before. So we are looking for a way to fail a rule.
First I failed rule by running and disabling a rule at the same time.
But we decided that it's not ideal. Mike suggest good way of doing
it(see in comment to this PR), but we do not have a ES Query rule type
in serverless O11y yet. it is now disscussing.
So I think it would be nice to merge this PR as it is and after fix fail
rule function. I'll have all work which was done for my future PR with
another tests and I can move forward. For skipped test I'll create
another ticket:
https://github.com/elastic/kibana/issues/167296
---------
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
## Summary
Fixes https://github.com/elastic/kibana/issues/167231
This PR introduces following changes, if the config
`xpack.rollup.ui.enabled` is set to `false`:
- on the client side:
- don't add the Rollup toggle to Index Management
- don't add the Rollup badge to Index Management
- on the server side:
- don't add Rollup data enricher to Index Management
- don't enable Rollup in data views and data search (the same is done on
the client side already)
## Summary
This adds a connectors table to the Serverless Search plugin. Actions
for the table will be added after [this related
PR](https://github.com/elastic/kibana/pull/167804) has merged.
<img width="1318" alt="Screenshot 2023-10-03 at 17 24 22"
src="62383a52-e7fd-4458-8db9-d6e433f3f94c">
Closes https://github.com/elastic/kibana/issues/167320
flaky test runner
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3278
Flakiness caused by https://github.com/elastic/kibana/pull/166991. Cause
of flakiness is not waiting for dashboard-picker to finish loading
options after setting the search value.
Flaky test highlights 3 other problems with
`SavedObjectSaveModalDashboard` component that are resolved in this PR:
1) Dashboard select not disabled when "New" or "None" is selected.
Regression from https://github.com/elastic/kibana/pull/166991
2) There is no form validation message giving visual feedback when users
click "Save" with "Existing" and no selected dashboard.
3) https://github.com/elastic/kibana/pull/166991 switched dashboard
selector from `EuiComboBox` to `EuiSelectable`. This changed the
behavior of selecting the same item. With the `EuiComboBox`
implemenation, selecting the same item retained the selection while
selecting the same item with the `EuiSelectable` implementation
unselected the item.
<img width="300" alt="Screenshot 2023-09-29 at 12 51 29 PM"
src="edd8d647-b8b6-4ecc-8f91-d1ad9e916a95">
---------
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Closes https://github.com/elastic/kibana/issues/167175
flaky test runner
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3292
Test failing because actions buttons are not visible. Screen shot from
failed test shows cell did not get selected. PR adds retry around
getting action button logic to ensure cell is clicked again in the event
the action button is not found
Notice how cell is not selected in screen shot below.
<img width="500" alt="Screenshot 2023-10-03 at 10 57 23 AM"
src="51432ea8-1a75-4182-bb1c-49f87a3d1070">
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary
Main ticket: https://github.com/elastic/kibana/issues/166545
This PR integrates the shared-ux `DefaultNavigation` component in the
Security Solution project for serverless.
These changes do not replace the original Security left navigation yet,
which is still the navigation component displayed by default. In order
to render the shared-ux `DefaultNavigation` this experimental flag
should be enabled:
`xpack.securitySolutionServerless.enableExperimental:
['platformNavEnabled']`
<img width="223" alt="Captura de pantalla 2023-09-25 a les 14 00 49"
src="91f247ce-ad9c-4093-a0f7-dbca63164b4a">
## Implementation
- Security navigation is still the default. Please enable the
`platformNavEnabled` experimental flag to render the shared navigation.
- We have two different formatters from the security navigation links
config to the navigation tree required in serverless:
- ChromeNavigationTree: registered directly to the serverless plugin for
the breadcrumbs to work when the navigation is customized with the
Security-specific nav. It will be removed after the migration to the
shared nav.
- NavigationTree: the format the shared nav uses, it already registers
the chromeNavigationTree for the breadcrumbs to the serverless plugin by
itself.
- Security plugin `deepLinks` needed to be formatted differently to make
this shared navigation work, since the `navLinkStatus: hidden` prevents
the links from being processed and displayed, this has been solved via
the `setDeepLinksFormatter` exposed on the plugin setup contract.
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>