From dbd8cc585ba2cf3672f81f2977235815325d097e Mon Sep 17 00:00:00 2001 From: Matthias Wilhelm Date: Tue, 30 Jun 2020 18:29:29 +0200 Subject: [PATCH 1/3] Initial migration of files to discover plugin --- src/plugins/data/server/saved_objects/index.ts | 2 -- src/plugins/data/server/search/search_service.ts | 3 --- src/plugins/discover/server/plugin.ts | 2 ++ .../{data/server/saved_objects => discover/server}/search.ts | 0 .../server}/search_migrations.test.ts | 0 .../saved_objects => discover/server}/search_migrations.ts | 2 +- 6 files changed, 3 insertions(+), 6 deletions(-) rename src/plugins/{data/server/saved_objects => discover/server}/search.ts (100%) rename src/plugins/{data/server/saved_objects => discover/server}/search_migrations.test.ts (100%) rename src/plugins/{data/server/saved_objects => discover/server}/search_migrations.ts (98%) diff --git a/src/plugins/data/server/saved_objects/index.ts b/src/plugins/data/server/saved_objects/index.ts index 4326200141179..102183fc1c5ed 100644 --- a/src/plugins/data/server/saved_objects/index.ts +++ b/src/plugins/data/server/saved_objects/index.ts @@ -16,8 +16,6 @@ * specific language governing permissions and limitations * under the License. */ - -export { searchSavedObjectType } from './search'; export { querySavedObjectType } from './query'; export { indexPatternSavedObjectType } from './index_patterns'; export { kqlTelemetry } from './kql_telementry'; diff --git a/src/plugins/data/server/search/search_service.ts b/src/plugins/data/server/search/search_service.ts index df809b425eb9e..34ed8c6c6f401 100644 --- a/src/plugins/data/server/search/search_service.ts +++ b/src/plugins/data/server/search/search_service.ts @@ -27,7 +27,6 @@ import { } from './types'; import { registerSearchRoute } from './routes'; import { ES_SEARCH_STRATEGY, esSearchStrategyProvider } from './es_search'; -import { searchSavedObjectType } from '../saved_objects'; import { DataPluginStart } from '../plugin'; export class SearchService implements Plugin { @@ -36,8 +35,6 @@ export class SearchService implements Plugin { constructor(private initializerContext: PluginInitializerContext) {} public setup(core: CoreSetup): ISearchSetup { - core.savedObjects.registerType(searchSavedObjectType); - this.registerSearchStrategy( ES_SEARCH_STRATEGY, esSearchStrategyProvider(this.initializerContext.config.legacy.globalConfig$) diff --git a/src/plugins/discover/server/plugin.ts b/src/plugins/discover/server/plugin.ts index a7445a5189163..4e7764c809f00 100644 --- a/src/plugins/discover/server/plugin.ts +++ b/src/plugins/discover/server/plugin.ts @@ -20,11 +20,13 @@ import { CoreSetup, CoreStart, Plugin } from 'kibana/server'; import { uiSettings } from './ui_settings'; import { capabilitiesProvider } from './capabilities_provider'; +import { searchSavedObjectType } from './search'; export class DiscoverServerPlugin implements Plugin { public setup(core: CoreSetup) { core.capabilities.registerProvider(capabilitiesProvider); core.uiSettings.register(uiSettings); + core.savedObjects.registerType(searchSavedObjectType); return {}; } diff --git a/src/plugins/data/server/saved_objects/search.ts b/src/plugins/discover/server/search.ts similarity index 100% rename from src/plugins/data/server/saved_objects/search.ts rename to src/plugins/discover/server/search.ts diff --git a/src/plugins/data/server/saved_objects/search_migrations.test.ts b/src/plugins/discover/server/search_migrations.test.ts similarity index 100% rename from src/plugins/data/server/saved_objects/search_migrations.test.ts rename to src/plugins/discover/server/search_migrations.test.ts diff --git a/src/plugins/data/server/saved_objects/search_migrations.ts b/src/plugins/discover/server/search_migrations.ts similarity index 98% rename from src/plugins/data/server/saved_objects/search_migrations.ts rename to src/plugins/discover/server/search_migrations.ts index 2e37cd1255cee..3834e5188015b 100644 --- a/src/plugins/data/server/saved_objects/search_migrations.ts +++ b/src/plugins/discover/server/search_migrations.ts @@ -19,7 +19,7 @@ import { flow, get } from 'lodash'; import { SavedObjectMigrationFn } from 'kibana/server'; -import { DEFAULT_QUERY_LANGUAGE } from '../../common'; +import { DEFAULT_QUERY_LANGUAGE } from '../../data/common'; const migrateMatchAllQuery: SavedObjectMigrationFn = (doc) => { const searchSourceJSON = get(doc, 'attributes.kibanaSavedObjectMeta.searchSourceJSON'); From 44cd5a2979cbf0dd8d1ecc0f2e0654cc5cdfc39d Mon Sep 17 00:00:00 2001 From: Matthias Wilhelm Date: Wed, 1 Jul 2020 11:07:14 +0200 Subject: [PATCH 2/3] Adapt struct for convention, determine which fields not to index --- src/plugins/discover/server/plugin.ts | 4 ++-- .../discover/server/saved_objects/index.ts | 20 +++++++++++++++++++ .../server/{ => saved_objects}/search.ts | 14 ++++++------- .../search_migrations.test.ts | 8 ++++---- .../{ => saved_objects}/search_migrations.ts | 4 ++-- 5 files changed, 35 insertions(+), 15 deletions(-) create mode 100644 src/plugins/discover/server/saved_objects/index.ts rename src/plugins/discover/server/{ => saved_objects}/search.ts (82%) rename src/plugins/discover/server/{ => saved_objects}/search_migrations.test.ts (96%) rename src/plugins/discover/server/{ => saved_objects}/search_migrations.ts (97%) diff --git a/src/plugins/discover/server/plugin.ts b/src/plugins/discover/server/plugin.ts index 4e7764c809f00..e24e4846cc185 100644 --- a/src/plugins/discover/server/plugin.ts +++ b/src/plugins/discover/server/plugin.ts @@ -20,13 +20,13 @@ import { CoreSetup, CoreStart, Plugin } from 'kibana/server'; import { uiSettings } from './ui_settings'; import { capabilitiesProvider } from './capabilities_provider'; -import { searchSavedObjectType } from './search'; +import { search } from './saved_objects'; export class DiscoverServerPlugin implements Plugin { public setup(core: CoreSetup) { core.capabilities.registerProvider(capabilitiesProvider); core.uiSettings.register(uiSettings); - core.savedObjects.registerType(searchSavedObjectType); + core.savedObjects.registerType(search); return {}; } diff --git a/src/plugins/discover/server/saved_objects/index.ts b/src/plugins/discover/server/saved_objects/index.ts new file mode 100644 index 0000000000000..8caf811f381b8 --- /dev/null +++ b/src/plugins/discover/server/saved_objects/index.ts @@ -0,0 +1,20 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +export { search } from './search'; diff --git a/src/plugins/discover/server/search.ts b/src/plugins/discover/server/saved_objects/search.ts similarity index 82% rename from src/plugins/discover/server/search.ts rename to src/plugins/discover/server/saved_objects/search.ts index 437c83f67bf5d..fe68db7fa0440 100644 --- a/src/plugins/discover/server/search.ts +++ b/src/plugins/discover/server/saved_objects/search.ts @@ -18,9 +18,9 @@ */ import { SavedObjectsType } from 'kibana/server'; -import { searchSavedObjectTypeMigrations } from './search_migrations'; +import { searchMigrations } from './search_migrations'; -export const searchSavedObjectType: SavedObjectsType = { +export const search: SavedObjectsType = { name: 'search', hidden: false, namespaceType: 'single', @@ -43,18 +43,18 @@ export const searchSavedObjectType: SavedObjectsType = { }, mappings: { properties: { - columns: { type: 'keyword' }, + columns: { type: 'keyword', index: false }, description: { type: 'text' }, - hits: { type: 'integer' }, + hits: { type: 'integer', index: false }, kibanaSavedObjectMeta: { properties: { - searchSourceJSON: { type: 'text' }, + searchSourceJSON: { type: 'text', index: false }, }, }, - sort: { type: 'keyword' }, + sort: { type: 'keyword', index: false }, title: { type: 'text' }, version: { type: 'integer' }, }, }, - migrations: searchSavedObjectTypeMigrations, + migrations: searchMigrations, }; diff --git a/src/plugins/discover/server/search_migrations.test.ts b/src/plugins/discover/server/saved_objects/search_migrations.test.ts similarity index 96% rename from src/plugins/discover/server/search_migrations.test.ts rename to src/plugins/discover/server/saved_objects/search_migrations.test.ts index 69db08a689255..babd25c03dbb2 100644 --- a/src/plugins/discover/server/search_migrations.test.ts +++ b/src/plugins/discover/server/saved_objects/search_migrations.test.ts @@ -18,13 +18,13 @@ */ import { SavedObjectMigrationContext } from 'kibana/server'; -import { searchSavedObjectTypeMigrations } from './search_migrations'; +import { searchMigrations } from './search_migrations'; const savedObjectMigrationContext = (null as unknown) as SavedObjectMigrationContext; describe('migration search', () => { describe('6.7.2', () => { - const migrationFn = searchSavedObjectTypeMigrations['6.7.2']; + const migrationFn = searchMigrations['6.7.2']; it('should migrate obsolete match_all query', () => { const migratedDoc = migrationFn( @@ -56,7 +56,7 @@ describe('migration search', () => { }); describe('7.0.0', () => { - const migrationFn = searchSavedObjectTypeMigrations['7.0.0']; + const migrationFn = searchMigrations['7.0.0']; test('skips errors when searchSourceJSON is null', () => { const doc = { @@ -278,7 +278,7 @@ Object { }); describe('7.4.0', function () { - const migrationFn = searchSavedObjectTypeMigrations['7.4.0']; + const migrationFn = searchMigrations['7.4.0']; test('transforms one dimensional sort arrays into two dimensional arrays', () => { const doc = { diff --git a/src/plugins/discover/server/search_migrations.ts b/src/plugins/discover/server/saved_objects/search_migrations.ts similarity index 97% rename from src/plugins/discover/server/search_migrations.ts rename to src/plugins/discover/server/saved_objects/search_migrations.ts index 3834e5188015b..a99e134e4d9ad 100644 --- a/src/plugins/discover/server/search_migrations.ts +++ b/src/plugins/discover/server/saved_objects/search_migrations.ts @@ -19,7 +19,7 @@ import { flow, get } from 'lodash'; import { SavedObjectMigrationFn } from 'kibana/server'; -import { DEFAULT_QUERY_LANGUAGE } from '../../data/common'; +import { DEFAULT_QUERY_LANGUAGE } from '../../../data/common'; const migrateMatchAllQuery: SavedObjectMigrationFn = (doc) => { const searchSourceJSON = get(doc, 'attributes.kibanaSavedObjectMeta.searchSourceJSON'); @@ -121,7 +121,7 @@ const migrateSearchSortToNestedArray: SavedObjectMigrationFn = (doc) = }; }; -export const searchSavedObjectTypeMigrations = { +export const searchMigrations = { '6.7.2': flow>(migrateMatchAllQuery), '7.0.0': flow>(setNewReferences), '7.4.0': flow>(migrateSearchSortToNestedArray), From 37241ac1754749b53279dc536c7619485850e65b Mon Sep 17 00:00:00 2001 From: Matthias Wilhelm Date: Thu, 2 Jul 2020 21:57:14 +0200 Subject: [PATCH 3/3] Revert change of variable name --- src/plugins/discover/server/plugin.ts | 4 ++-- src/plugins/discover/server/saved_objects/index.ts | 2 +- src/plugins/discover/server/saved_objects/search.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/plugins/discover/server/plugin.ts b/src/plugins/discover/server/plugin.ts index e24e4846cc185..77553ce644839 100644 --- a/src/plugins/discover/server/plugin.ts +++ b/src/plugins/discover/server/plugin.ts @@ -20,13 +20,13 @@ import { CoreSetup, CoreStart, Plugin } from 'kibana/server'; import { uiSettings } from './ui_settings'; import { capabilitiesProvider } from './capabilities_provider'; -import { search } from './saved_objects'; +import { searchSavedObjectType } from './saved_objects'; export class DiscoverServerPlugin implements Plugin { public setup(core: CoreSetup) { core.capabilities.registerProvider(capabilitiesProvider); core.uiSettings.register(uiSettings); - core.savedObjects.registerType(search); + core.savedObjects.registerType(searchSavedObjectType); return {}; } diff --git a/src/plugins/discover/server/saved_objects/index.ts b/src/plugins/discover/server/saved_objects/index.ts index 8caf811f381b8..efe785364ccb6 100644 --- a/src/plugins/discover/server/saved_objects/index.ts +++ b/src/plugins/discover/server/saved_objects/index.ts @@ -17,4 +17,4 @@ * under the License. */ -export { search } from './search'; +export { searchSavedObjectType } from './search'; diff --git a/src/plugins/discover/server/saved_objects/search.ts b/src/plugins/discover/server/saved_objects/search.ts index fe68db7fa0440..0418ba97b94da 100644 --- a/src/plugins/discover/server/saved_objects/search.ts +++ b/src/plugins/discover/server/saved_objects/search.ts @@ -20,7 +20,7 @@ import { SavedObjectsType } from 'kibana/server'; import { searchMigrations } from './search_migrations'; -export const search: SavedObjectsType = { +export const searchSavedObjectType: SavedObjectsType = { name: 'search', hidden: false, namespaceType: 'single',