From 269e02a9432f1e87894012cf4b283dced18a33fe Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
<41898282+github-actions[bot]@users.noreply.github.com>
Date: Wed, 20 Nov 2024 15:35:19 -0800
Subject: [PATCH 01/53] deps: Bump ironbank version to 9.5 (#200863)
deps: Bump ironbank version
deps(ironbank): Bump ubi version to 9.5
changed lines [7] of file
"/tmp/updatecli/github/elastic/kibana/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/Dockerfile"
deps(ironbank): Bump ubi version to 9.5
change detected:
* key "$.args.BASE_TAG" updated
from "\"9.4\"" to "\"9.5\"", in file
"src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/hardening_manifest.yaml"
GitHub
Action workflow link
---
|
Created automatically by Updatecli
Options:
Most of Updatecli configuration is done via its
manifest(s).
- If you close this pull request, Updatecli will automatically reopen
it, the next time it runs.
- If you close this pull request and delete the base branch, Updatecli
will automatically recreate it, erasing all previous commits made.
Feel free to report any issues at github.com/updatecli/updatecli.
If you find this tool useful, do not hesitate to star our GitHub
repository as a sign of appreciation, and/or to tell us directly on
our chat!
|
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
---
.../os_packages/docker_generator/templates/ironbank/Dockerfile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/Dockerfile b/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/Dockerfile
index f7849bff06ead..9993381fb4332 100644
--- a/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/Dockerfile
+++ b/src/dev/build/tasks/os_packages/docker_generator/templates/ironbank/Dockerfile
@@ -4,7 +4,7 @@
################################################################################
ARG BASE_REGISTRY=registry1.dso.mil
ARG BASE_IMAGE=ironbank/redhat/ubi/ubi9
-ARG BASE_TAG=9.4
+ARG BASE_TAG=9.5
FROM ${BASE_REGISTRY}/${BASE_IMAGE}:${BASE_TAG} as prep_files
From d39d0d67a516abd5f4be63577f58c833962f27e6 Mon Sep 17 00:00:00 2001
From: Sandra G
Date: Wed, 20 Nov 2024 19:03:59 -0500
Subject: [PATCH 02/53] [data usage] add line series for totals (#201038)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
## Summary
add line series for totals
### Checklist
Check the PR satisfies following conditions.
Reviewers should verify this PR satisfies this list as well.
- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [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
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ ] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
### Identify risks
Does this PR introduce any risks? For example, consider risks like hard
to test bugs, performance regression, potential of data loss.
Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.
- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...
---
.../public/app/components/chart_panel.tsx | 26 +++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/x-pack/plugins/data_usage/public/app/components/chart_panel.tsx b/x-pack/plugins/data_usage/public/app/components/chart_panel.tsx
index 7554716c59492..31ae68244e982 100644
--- a/x-pack/plugins/data_usage/public/app/components/chart_panel.tsx
+++ b/x-pack/plugins/data_usage/public/app/components/chart_panel.tsx
@@ -16,6 +16,7 @@ import {
niceTimeFormatter,
DARK_THEME,
LIGHT_THEME,
+ LineSeries,
} from '@elastic/charts';
import { i18n } from '@kbn/i18n';
import { LegendAction } from './legend_action';
@@ -59,6 +60,18 @@ export const ChartPanel: React.FC = ({
[minTimestamp, maxTimestamp]
);
+ // Calculate the total for each time bucket
+ const totalSeries = useMemo(() => {
+ const totalsMap = new Map();
+
+ series.forEach((stream) => {
+ stream.data.forEach((point) => {
+ totalsMap.set(point.x, (totalsMap.get(point.x) || 0) + point.y);
+ });
+ });
+
+ return Array.from(totalsMap.entries()).map(([x, y]) => ({ x, y }));
+ }, [series]);
const renderLegendAction = useCallback(
({ label }: { label: string }) => {
return (
@@ -87,6 +100,19 @@ export const ChartPanel: React.FC = ({
xDomain={{ min: minTimestamp, max: maxTimestamp }}
legendAction={renderLegendAction}
/>
+
{series.map((stream, streamIdx) => (
Date: Thu, 21 Nov 2024 00:43:31 +0000
Subject: [PATCH 03/53] skip flaky suite (#201037)
---
x-pack/test/functional_search/tests/solution_navigation.ts | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/x-pack/test/functional_search/tests/solution_navigation.ts b/x-pack/test/functional_search/tests/solution_navigation.ts
index 43561efa902f6..b64367b11675c 100644
--- a/x-pack/test/functional_search/tests/solution_navigation.ts
+++ b/x-pack/test/functional_search/tests/solution_navigation.ts
@@ -16,7 +16,8 @@ export default function searchSolutionNavigation({
const browser = getService('browser');
const kibanaServer = getService('kibanaServer');
- describe('Search Solution Navigation', () => {
+ // FLAKY: https://github.com/elastic/kibana/issues/201037
+ describe.skip('Search Solution Navigation', () => {
let cleanUp: () => Promise;
let spaceCreated: { id: string } = { id: '' };
From 35195651bc823b5aacd78e95451dce535b846015 Mon Sep 17 00:00:00 2001
From: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Date: Thu, 21 Nov 2024 11:46:06 +1100
Subject: [PATCH 04/53] skip failing test suite (#197475)
---
test/plugin_functional/test_suites/panel_actions/index.ts | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/test/plugin_functional/test_suites/panel_actions/index.ts b/test/plugin_functional/test_suites/panel_actions/index.ts
index ad4871e961db1..5e18d768acf13 100644
--- a/test/plugin_functional/test_suites/panel_actions/index.ts
+++ b/test/plugin_functional/test_suites/panel_actions/index.ts
@@ -19,7 +19,8 @@ export default function ({
const kibanaServer = getService('kibanaServer');
const { common, dashboard } = getPageObjects(['common', 'dashboard']);
- describe('pluggable panel actions', function () {
+ // Failing: See https://github.com/elastic/kibana/issues/197475
+ describe.skip('pluggable panel actions', function () {
before(async () => {
await browser.setWindowSize(1300, 900);
await kibanaServer.savedObjects.cleanStandardList();
From 052f527ee7acf3393a0b9bfa2ad2f41de29015a9 Mon Sep 17 00:00:00 2001
From: Samiul Monir <150824886+Samiul-TheSoccerFan@users.noreply.github.com>
Date: Wed, 20 Nov 2024 19:48:56 -0500
Subject: [PATCH 05/53] Preconfigured Endpoints in Semantic_text field
(#200659)
## Summary
1. Removed default endpoints from the `Select inference id` dropdown
2. Linked preconfigured endpoints properly with fields.
3. Added support to remove `index` errors regarding models.
### ESS:
https://github.com/user-attachments/assets/4c13f5b3-a00a-4aac-a1c2-ca94e5b2c293
### ES3
https://github.com/user-attachments/assets/83f1bd74-0973-4225-907b-89e7c372fa5f
### ingest and data with the preconfigured endpoint:
```
POST /search-jmo0/_doc
{
"content": "park_rocky-mountain"
}
```
```
GET /search-jmo0/_search
```
will return something like this:
```
{
"took": 3,
"timed_out": false,
"_shards": {
"total": 3,
"successful": 3,
"skipped": 0,
"failed": 0
},
"hits": {
"total": {
"value": 1,
"relation": "eq"
},
"max_score": 1,
"hits": [
{
"_index": "search-jmo0",
"_id": "712LRpMBqdKCj6yG9iFJ",
"_score": 1,
"_source": {
"openai_semantic_text": {
"inference": {
"inference_id": "my-test-1-openai-endpoint",
"model_settings": {
"task_type": "text_embedding",
"dimensions": 1536,
"similarity": "dot_product",
"element_type": "float"
},
"chunks": [
{
"text": "park_rocky-mountain",
"embeddings": [...]
}
]
}
},
"elser_semantic_text": {
"inference": {
"inference_id": ".elser-2-elasticsearch",
"model_settings": {
"task_type": "sparse_embedding"
},
"chunks": [
{
"text": "park_rocky-mountain",
"embeddings": {...}
}
]
}
},
"e5_semantic_text": {
"inference": {
"inference_id": ".multilingual-e5-small-elasticsearch",
"model_settings": {
"task_type": "text_embedding",
"dimensions": 384,
"similarity": "cosine",
"element_type": "float"
},
"chunks": [
{
"text": "park_rocky-mountain",
"embeddings": [...]
}
]
}
},
"content": "park_rocky-mountain"
}
}
]
}
}
```
### Checklist
Check the PR satisfies following conditions.
Reviewers should verify this PR satisfies this list as well.
- [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
---
.../components/search_index/index_error.tsx | 16 ++++++++++++++--
.../index_details_page.test.tsx | 1 -
.../select_inference_id.test.tsx | 8 +++++---
.../field_parameters/select_inference_id.tsx | 17 +----------------
.../semantic_text/use_semantic_text.ts | 4 +++-
.../document_fields/fields/fields_list_item.tsx | 9 +++++++--
.../mappings_editor/constants/default_values.ts | 6 ++++++
.../details_page_mappings_content.tsx | 5 ++++-
.../all_inference_endpoints/constants.ts | 5 -----
.../utils/preconfigured_endpoint_helper.test.ts | 5 ++---
.../utils/preconfigured_endpoint_helper.ts | 5 +----
11 files changed, 43 insertions(+), 38 deletions(-)
diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/index_error.tsx b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/index_error.tsx
index 951fb942a7fa8..1ed3857b2c7ce 100644
--- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/index_error.tsx
+++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/index_error.tsx
@@ -31,10 +31,17 @@ export interface IndexErrorProps {
}
interface SemanticTextProperty extends MappingPropertyBase {
- inference_id: string;
+ inference_id?: string;
type: 'semantic_text';
}
+/*
+ This will be repalce once we add default elser inference_id
+ with the index mapping response.
+*/
+const ELSER_PRECONFIGURED_ENDPOINTS = '.elser-2-elasticsearch';
+const isInferencePreconfigured = (inferenceId: string) => inferenceId.startsWith('.');
+
const parseMapping = (mappings: MappingTypeMapping) => {
const fields = mappings.properties;
if (!fields) {
@@ -49,6 +56,11 @@ const getSemanticTextFields = (
): Array<{ path: string; source: SemanticTextProperty }> => {
return Object.entries(fields).flatMap(([key, value]) => {
const currentPath: string = path ? `${path}.${key}` : key;
+ if (value.type === 'semantic_text') {
+ value = value.inference_id
+ ? value
+ : { ...value, inference_id: ELSER_PRECONFIGURED_ENDPOINTS };
+ }
const currentField: Array<{ path: string; source: SemanticTextProperty }> =
value.type === 'semantic_text' ? [{ path: currentPath, source: value }] : [];
if (hasProperties(value)) {
@@ -115,7 +127,7 @@ export const IndexError: React.FC = ({ indexName }) => {
field,
};
}
- if (isLocalModel(model)) {
+ if (isLocalModel(model) && !isInferencePreconfigured(model.inference_id)) {
const modelId = model.service_settings.model_id;
const modelStats = trainedModelStats?.trained_model_stats.find(
(value) =>
diff --git a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.tsx b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.tsx
index 76b8295b6b1f4..5a97dadc870cb 100644
--- a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.tsx
+++ b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/index_details_page.test.tsx
@@ -836,7 +836,6 @@ describe('', () => {
testBed.actions.mappings.isReferenceFieldVisible();
testBed.actions.mappings.selectInferenceIdButtonExists();
testBed.actions.mappings.openSelectInferencePopover();
- testBed.actions.mappings.expectDefaultInferenceModelToExists();
testBed.actions.mappings.expectCustomInferenceModelToExists(
`custom-inference_${customInferenceModel}`
);
diff --git a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/select_inference_id.test.tsx b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/select_inference_id.test.tsx
index ed5af67840513..2fb9165e8fd10 100644
--- a/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/select_inference_id.test.tsx
+++ b/x-pack/plugins/index_management/__jest__/client_integration/index_details_page/select_inference_id.test.tsx
@@ -71,6 +71,8 @@ jest.mock('../../../public/application/components/mappings_editor/mappings_state
jest.mock('../../../public/application/services/api', () => ({
useLoadInferenceEndpoints: jest.fn().mockReturnValue({
data: [
+ { inference_id: '.preconfigured-elser', task_type: 'sparse_embedding' },
+ { inference_id: '.preconfigured-e5', task_type: 'text_embedding' },
{ inference_id: 'endpoint-1', task_type: 'text_embedding' },
{ inference_id: 'endpoint-2', task_type: 'sparse_embedding' },
{ inference_id: 'endpoint-3', task_type: 'completion' },
@@ -83,7 +85,7 @@ jest.mock('../../../public/application/services/api', () => ({
function getTestForm(Component: React.FC) {
return (defaultProps: SelectInferenceIdProps) => {
const { form } = useForm();
- form.setFieldValue('inference_id', 'elser_model_2');
+ form.setFieldValue('inference_id', '.preconfigured-elser');
return (