diff --git a/.i18nrc.json b/.i18nrc.json index af21f3426d75..98c36b43e5d8 100644 --- a/.i18nrc.json +++ b/.i18nrc.json @@ -1,7 +1,7 @@ { "paths": { "common.ui": "src/legacy/ui", - "console": "src/legacy/core_plugins/console", + "console": "src/plugins/console", "core": "src/core", "dashboardEmbeddableContainer": "src/plugins/dashboard_embeddable_container", "data": [ diff --git a/src/core/server/http/router/response_adapter.ts b/src/core/server/http/router/response_adapter.ts index e5dabc99f444..948b4596e265 100644 --- a/src/core/server/http/router/response_adapter.ts +++ b/src/core/server/http/router/response_adapter.ts @@ -19,6 +19,7 @@ import { ResponseObject as HapiResponseObject, ResponseToolkit as HapiResponseToolkit } from 'hapi'; import typeDetect from 'type-detect'; import Boom from 'boom'; +import * as stream from 'stream'; import { HttpResponsePayload, @@ -112,8 +113,18 @@ export class HapiResponseAdapter { return response; } - private toError(kibanaResponse: KibanaResponse) { + private toError(kibanaResponse: KibanaResponse) { const { payload } = kibanaResponse; + + // Special case for when we are proxying requests and want to enable streaming back error responses opaquely. + if (Buffer.isBuffer(payload) || payload instanceof stream.Readable) { + const response = this.responseToolkit + .response(kibanaResponse.payload) + .code(kibanaResponse.status); + setHeaders(response, kibanaResponse.options.headers); + return response; + } + // we use for BWC with Boom payload for error responses - {error: string, message: string, statusCode: string} const error = new Boom('', { statusCode: kibanaResponse.status, diff --git a/src/legacy/core_plugins/console/__tests__/index.js b/src/legacy/core_plugins/console/__tests__/index.js deleted file mode 100644 index c811bb3f89bb..000000000000 --- a/src/legacy/core_plugins/console/__tests__/index.js +++ /dev/null @@ -1,75 +0,0 @@ -/* - * 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. - */ - -import { Deprecations } from '../../../deprecation'; -import expect from '@kbn/expect'; -import index from '../index'; -import { noop } from 'lodash'; -import sinon from 'sinon'; - -describe('plugins/console', function() { - describe('#deprecate()', function() { - let transformDeprecations; - - before(function() { - const Plugin = function(options) { - this.deprecations = options.deprecations; - }; - - const plugin = index({ Plugin }); - - const deprecations = plugin.deprecations(Deprecations); - transformDeprecations = (settings, log = noop) => { - deprecations.forEach(deprecation => deprecation(settings, log)); - }; - }); - - describe('proxyConfig', function() { - it('leaves the proxyConfig settings', function() { - const proxyConfigOne = {}; - const proxyConfigTwo = {}; - const settings = { - proxyConfig: [proxyConfigOne, proxyConfigTwo], - }; - - transformDeprecations(settings); - expect(settings.proxyConfig[0]).to.be(proxyConfigOne); - expect(settings.proxyConfig[1]).to.be(proxyConfigTwo); - }); - - it('logs a warning when proxyConfig is specified', function() { - const settings = { - proxyConfig: [], - }; - - const log = sinon.spy(); - transformDeprecations(settings, log); - expect(log.calledOnce).to.be(true); - }); - - it(`doesn't log a warning when proxyConfig isn't specified`, function() { - const settings = {}; - - const log = sinon.spy(); - transformDeprecations(settings, log); - expect(log.called).to.be(false); - }); - }); - }); -}); diff --git a/src/legacy/core_plugins/console/index.ts b/src/legacy/core_plugins/console/index.ts deleted file mode 100644 index cec6d0a4219a..000000000000 --- a/src/legacy/core_plugins/console/index.ts +++ /dev/null @@ -1,187 +0,0 @@ -/* - * 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. - */ - -import Boom from 'boom'; -import { first } from 'rxjs/operators'; -import { resolve, join } from 'path'; -import url from 'url'; -import { has, isEmpty, head, pick } from 'lodash'; - -// @ts-ignore -import { addProcessorDefinition } from './server/api_server/es_6_0/ingest'; -// @ts-ignore -import { resolveApi } from './server/api_server/server'; -// @ts-ignore -import { addExtensionSpecFilePath } from './server/api_server/spec'; -// @ts-ignore -import { setHeaders } from './server/set_headers'; -// @ts-ignore -import { ProxyConfigCollection, getElasticsearchProxyConfig, createProxyRoute } from './server'; - -function filterHeaders(originalHeaders: any, headersToKeep: any) { - const normalizeHeader = function(header: any) { - if (!header) { - return ''; - } - header = header.toString(); - return header.trim().toLowerCase(); - }; - - // Normalize list of headers we want to allow in upstream request - const headersToKeepNormalized = headersToKeep.map(normalizeHeader); - - return pick(originalHeaders, headersToKeepNormalized); -} - -// eslint-disable-next-line -export default function(kibana: any) { - const npSrc = resolve(__dirname, 'public/np_ready'); - - let defaultVars: any; - return new kibana.Plugin({ - id: 'console', - require: ['elasticsearch'], - - config(Joi: any) { - return Joi.object({ - enabled: Joi.boolean().default(true), - proxyFilter: Joi.array() - .items(Joi.string()) - .single() - .default(['.*']), - ssl: Joi.object({ - verify: Joi.boolean(), - }).default(), - proxyConfig: Joi.array() - .items( - Joi.object().keys({ - match: Joi.object().keys({ - protocol: Joi.string().default('*'), - host: Joi.string().default('*'), - port: Joi.string().default('*'), - path: Joi.string().default('*'), - }), - - timeout: Joi.number(), - ssl: Joi.object() - .keys({ - verify: Joi.boolean(), - ca: Joi.array() - .single() - .items(Joi.string()), - cert: Joi.string(), - key: Joi.string(), - }) - .default(), - }) - ) - .default(), - }).default(); - }, - - deprecations() { - return [ - (settings: any, log: any) => { - if (has(settings, 'proxyConfig')) { - log( - 'Config key "proxyConfig" is deprecated. Configuration can be inferred from the "elasticsearch" settings' - ); - } - }, - ]; - }, - - uiCapabilities() { - return { - dev_tools: { - show: true, - save: true, - }, - }; - }, - - async init(server: any, options: any) { - server.expose('addExtensionSpecFilePath', addExtensionSpecFilePath); - server.expose('addProcessorDefinition', addProcessorDefinition); - - if (options.ssl && options.ssl.verify) { - throw new Error('sense.ssl.verify is no longer supported.'); - } - - const config = server.config(); - const legacyEsConfig = await server.newPlatform.__internals.elasticsearch.legacy.config$ - .pipe(first()) - .toPromise(); - const proxyConfigCollection = new ProxyConfigCollection(options.proxyConfig); - const proxyPathFilters = options.proxyFilter.map((str: string) => new RegExp(str)); - - defaultVars = { - elasticsearchUrl: url.format( - Object.assign(url.parse(head(legacyEsConfig.hosts)), { auth: false }) - ), - }; - - server.route( - createProxyRoute({ - hosts: legacyEsConfig.hosts, - pathFilters: proxyPathFilters, - getConfigForReq(req: any, uri: any) { - const filteredHeaders = filterHeaders( - req.headers, - legacyEsConfig.requestHeadersWhitelist - ); - const headers = setHeaders(filteredHeaders, legacyEsConfig.customHeaders); - - if (!isEmpty(config.get('console.proxyConfig'))) { - return { - ...proxyConfigCollection.configForUri(uri), - headers, - }; - } - - return { - ...getElasticsearchProxyConfig(legacyEsConfig), - headers, - }; - }, - }) - ); - - server.route({ - path: '/api/console/api_server', - method: ['GET', 'POST'], - handler(req: any, h: any) { - const { sense_version: version, apis } = req.query; - if (!apis) { - throw Boom.badRequest('"apis" is a required param.'); - } - - return resolveApi(version, apis.split(','), h); - }, - }); - }, - - uiExports: { - devTools: [resolve(__dirname, 'public/legacy')], - styleSheetPaths: resolve(npSrc, 'application/styles/index.scss'), - injectDefaultVars: () => defaultVars, - noParse: [join(npSrc, 'application/models/legacy_core_editor/mode/worker/worker.js')], - }, - } as any); -} diff --git a/src/legacy/core_plugins/console/package.json b/src/legacy/core_plugins/console/package.json deleted file mode 100644 index 84ebcb95889c..000000000000 --- a/src/legacy/core_plugins/console/package.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "author": "Boaz Leskes ", - "contributors": [ - "Spencer Alger " - ], - "name": "console", - "version": "kibana" -} diff --git a/src/legacy/core_plugins/console/public/legacy.ts b/src/legacy/core_plugins/console/public/legacy.ts deleted file mode 100644 index d151a27d27e5..000000000000 --- a/src/legacy/core_plugins/console/public/legacy.ts +++ /dev/null @@ -1,53 +0,0 @@ -/* - * 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. - */ - -import { npSetup, npStart } from 'ui/new_platform'; -import { I18nContext } from 'ui/i18n'; -import chrome from 'ui/chrome'; -import { FeatureCatalogueCategory } from 'ui/registry/feature_catalogue'; - -import { plugin } from './np_ready'; -import { DevToolsSetup } from '../../../../plugins/dev_tools/public'; -import { HomePublicPluginSetup } from '../../../../plugins/home/public'; -import { UsageCollectionSetup } from '../../../../plugins/usage_collection/public'; - -export interface XPluginSet { - usageCollection: UsageCollectionSetup; - dev_tools: DevToolsSetup; - home: HomePublicPluginSetup; - __LEGACY: { - I18nContext: any; - elasticsearchUrl: string; - category: FeatureCatalogueCategory; - }; -} - -const pluginInstance = plugin({} as any); - -(async () => { - await pluginInstance.setup(npSetup.core, { - ...npSetup.plugins, - __LEGACY: { - elasticsearchUrl: chrome.getInjected('elasticsearchUrl'), - I18nContext, - category: FeatureCatalogueCategory.ADMIN, - }, - }); - await pluginInstance.start(npStart.core); -})(); diff --git a/src/legacy/core_plugins/console/server/__tests__/proxy_route/headers.js b/src/legacy/core_plugins/console/server/__tests__/proxy_route/headers.js deleted file mode 100644 index 3a8233775f9b..000000000000 --- a/src/legacy/core_plugins/console/server/__tests__/proxy_route/headers.js +++ /dev/null @@ -1,96 +0,0 @@ -/* - * 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. - */ - -import { request } from 'http'; - -import sinon from 'sinon'; -import expect from '@kbn/expect'; -import { Server } from 'hapi'; -import * as requestModule from '../../request'; - -import { createProxyRoute } from '../../'; - -import { createResponseStub } from './stubs'; - -describe('Console Proxy Route', () => { - const sandbox = sinon.createSandbox(); - const teardowns = []; - let setup; - - beforeEach(() => { - sandbox.stub(requestModule, 'sendRequest').callsFake(createResponseStub()); - - setup = () => { - const server = new Server(); - server.route( - createProxyRoute({ - hosts: ['http://localhost:9200'], - }) - ); - - teardowns.push(() => server.stop()); - - return { server }; - }; - }); - - afterEach(async () => { - sandbox.restore(); - await Promise.all(teardowns.splice(0).map(fn => fn())); - }); - - describe('headers', function() { - this.timeout(Infinity); - - it('forwards the remote header info', async () => { - const { server } = setup(); - await server.start(); - - const resp = await new Promise(resolve => { - request( - { - protocol: server.info.protocol + ':', - host: server.info.address, - port: server.info.port, - method: 'POST', - path: '/api/console/proxy?method=GET&path=/', - }, - resolve - ).end(); - }); - - resp.destroy(); - - sinon.assert.calledOnce(requestModule.sendRequest); - const { headers } = requestModule.sendRequest.getCall(0).args[0]; - expect(headers) - .to.have.property('x-forwarded-for') - .and.not.be(''); - expect(headers) - .to.have.property('x-forwarded-port') - .and.not.be(''); - expect(headers) - .to.have.property('x-forwarded-proto') - .and.not.be(''); - expect(headers) - .to.have.property('x-forwarded-host') - .and.not.be(''); - }); - }); -}); diff --git a/src/legacy/core_plugins/console/server/__tests__/proxy_route/params.js b/src/legacy/core_plugins/console/server/__tests__/proxy_route/params.js deleted file mode 100644 index 0069a08400c5..000000000000 --- a/src/legacy/core_plugins/console/server/__tests__/proxy_route/params.js +++ /dev/null @@ -1,170 +0,0 @@ -/* - * 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. - */ - -import { Agent } from 'http'; - -import sinon from 'sinon'; -import * as requestModule from '../../request'; -import expect from '@kbn/expect'; -import { Server } from 'hapi'; - -import { createProxyRoute } from '../../'; - -import { createResponseStub } from './stubs'; - -describe('Console Proxy Route', () => { - const sandbox = sinon.createSandbox(); - const teardowns = []; - let setup; - - beforeEach(() => { - sandbox.stub(requestModule, 'sendRequest').callsFake(createResponseStub()); - - setup = () => { - const server = new Server(); - teardowns.push(() => server.stop()); - return { server }; - }; - }); - - afterEach(async () => { - sandbox.restore(); - await Promise.all(teardowns.splice(0).map(fn => fn())); - }); - - describe('params', () => { - describe('pathFilters', () => { - describe('no matches', () => { - it('rejects with 403', async () => { - const { server } = setup(); - server.route( - createProxyRoute({ - pathFilters: [/^\/foo\//, /^\/bar\//], - }) - ); - - const { statusCode } = await server.inject({ - method: 'POST', - url: '/api/console/proxy?method=GET&path=/baz/type/id', - }); - - expect(statusCode).to.be(403); - }); - }); - describe('one match', () => { - it('allows the request', async () => { - const { server } = setup(); - server.route( - createProxyRoute({ - hosts: ['http://localhost:9200'], - pathFilters: [/^\/foo\//, /^\/bar\//], - }) - ); - - const { statusCode } = await server.inject({ - method: 'POST', - url: '/api/console/proxy?method=GET&path=/foo/type/id', - }); - - expect(statusCode).to.be(200); - sinon.assert.calledOnce(requestModule.sendRequest); - }); - }); - describe('all match', () => { - it('allows the request', async () => { - const { server } = setup(); - server.route( - createProxyRoute({ - hosts: ['http://localhost:9200'], - pathFilters: [/^\/foo\//, /^\/bar\//], - }) - ); - - const { statusCode } = await server.inject({ - method: 'POST', - url: '/api/console/proxy?method=GET&path=/foo/type/id', - }); - - expect(statusCode).to.be(200); - sinon.assert.calledOnce(requestModule.sendRequest); - }); - }); - }); - - describe('getConfigForReq()', () => { - it('passes the request and targeted uri', async () => { - const { server } = setup(); - - const getConfigForReq = sinon.stub().returns({}); - - server.route(createProxyRoute({ hosts: ['http://localhost:9200'], getConfigForReq })); - await server.inject({ - method: 'POST', - url: '/api/console/proxy?method=HEAD&path=/index/type/id', - }); - - sinon.assert.calledOnce(getConfigForReq); - const args = getConfigForReq.getCall(0).args; - expect(args[0]).to.have.property('path', '/api/console/proxy'); - expect(args[0]).to.have.property('method', 'post'); - expect(args[0]) - .to.have.property('query') - .eql({ method: 'HEAD', path: '/index/type/id' }); - expect(args[1]).to.be('http://localhost:9200/index/type/id?pretty=true'); - }); - - it('sends the returned timeout, agent, and base headers to request', async () => { - const { server } = setup(); - - const timeout = Math.round(Math.random() * 10000); - const agent = new Agent(); - const rejectUnauthorized = !!Math.round(Math.random()); - const headers = { - foo: 'bar', - baz: 'bop', - }; - - server.route( - createProxyRoute({ - hosts: ['http://localhost:9200'], - getConfigForReq: () => ({ - timeout, - agent, - headers, - rejectUnauthorized, - }), - }) - ); - - await server.inject({ - method: 'POST', - url: '/api/console/proxy?method=HEAD&path=/index/type/id', - }); - - sinon.assert.calledOnce(requestModule.sendRequest); - const opts = requestModule.sendRequest.getCall(0).args[0]; - expect(opts).to.have.property('timeout', timeout); - expect(opts).to.have.property('agent', agent); - expect(opts).to.have.property('rejectUnauthorized', rejectUnauthorized); - expect(opts.headers).to.have.property('foo', 'bar'); - expect(opts.headers).to.have.property('baz', 'bop'); - }); - }); - }); -}); diff --git a/src/legacy/core_plugins/console/server/__tests__/proxy_route/query_string.js b/src/legacy/core_plugins/console/server/__tests__/proxy_route/query_string.js deleted file mode 100644 index 4f96b032d9cc..000000000000 --- a/src/legacy/core_plugins/console/server/__tests__/proxy_route/query_string.js +++ /dev/null @@ -1,137 +0,0 @@ -/* - * 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. - */ - -import sinon from 'sinon'; -import * as requestModule from '../../request'; -import expect from '@kbn/expect'; -import { Server } from 'hapi'; - -import { createProxyRoute } from '../../'; - -import { createResponseStub } from './stubs'; - -describe('Console Proxy Route', () => { - const sandbox = sinon.createSandbox(); - const teardowns = []; - let request; - - beforeEach(() => { - sandbox.stub(requestModule, 'sendRequest').callsFake(createResponseStub()); - - request = async (method, path) => { - const server = new Server(); - server.route( - createProxyRoute({ - hosts: ['http://localhost:9200'], - }) - ); - - teardowns.push(() => server.stop()); - - const params = []; - if (path != null) params.push(`path=${path}`); - if (method != null) params.push(`method=${method}`); - return await server.inject({ - method: 'POST', - url: `/api/console/proxy${params.length ? `?${params.join('&')}` : ''}`, - }); - }; - }); - - afterEach(async () => { - sandbox.restore(); - await Promise.all(teardowns.splice(0).map(fn => fn())); - }); - - describe('query string', () => { - describe('path', () => { - describe('contains full url', () => { - it('treats the url as a path', async () => { - await request('GET', 'http://evil.com/test'); - sinon.assert.calledOnce(requestModule.sendRequest); - const args = requestModule.sendRequest.getCall(0).args; - expect(args[0].uri.href).to.be('http://localhost:9200/http://evil.com/test?pretty=true'); - }); - }); - describe('is missing', () => { - it('returns a 400 error', async () => { - const { statusCode } = await request('GET', undefined); - expect(statusCode).to.be(400); - sinon.assert.notCalled(requestModule.sendRequest); - }); - }); - describe('is empty', () => { - it('returns a 400 error', async () => { - const { statusCode } = await request('GET', ''); - expect(statusCode).to.be(400); - sinon.assert.notCalled(requestModule.sendRequest); - }); - }); - describe('starts with a slash', () => { - it('combines well with the base url', async () => { - await request('GET', '/index/type/id'); - sinon.assert.calledOnce(requestModule.sendRequest); - expect(requestModule.sendRequest.getCall(0).args[0].uri.href).to.be( - 'http://localhost:9200/index/type/id?pretty=true' - ); - }); - }); - describe(`doesn't start with a slash`, () => { - it('combines well with the base url', async () => { - await request('GET', 'index/type/id'); - sinon.assert.calledOnce(requestModule.sendRequest); - expect(requestModule.sendRequest.getCall(0).args[0].uri.href).to.be( - 'http://localhost:9200/index/type/id?pretty=true' - ); - }); - }); - }); - describe('method', () => { - describe('is missing', () => { - it('returns a 400 error', async () => { - const { statusCode } = await request(null, '/'); - expect(statusCode).to.be(400); - sinon.assert.notCalled(requestModule.sendRequest); - }); - }); - describe('is empty', () => { - it('returns a 400 error', async () => { - const { statusCode } = await request('', '/'); - expect(statusCode).to.be(400); - sinon.assert.notCalled(requestModule.sendRequest); - }); - }); - describe('is an invalid http method', () => { - it('returns a 400 error', async () => { - const { statusCode } = await request('foo', '/'); - expect(statusCode).to.be(400); - sinon.assert.notCalled(requestModule.sendRequest); - }); - }); - describe('is mixed case', () => { - it('sends a request with the exact method', async () => { - const { statusCode } = await request('HeAd', '/'); - expect(statusCode).to.be(200); - sinon.assert.calledOnce(requestModule.sendRequest); - expect(requestModule.sendRequest.getCall(0).args[0].method).to.be('HeAd'); - }); - }); - }); - }); -}); diff --git a/src/legacy/core_plugins/console/server/proxy_route.ts b/src/legacy/core_plugins/console/server/proxy_route.ts deleted file mode 100644 index f67c97443ba0..000000000000 --- a/src/legacy/core_plugins/console/server/proxy_route.ts +++ /dev/null @@ -1,171 +0,0 @@ -/* - * 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. - */ - -import Joi from 'joi'; -import * as url from 'url'; -import { IncomingMessage } from 'http'; -import Boom from 'boom'; -import { trimLeft, trimRight } from 'lodash'; -import { sendRequest } from './request'; - -function toURL(base: string, path: string) { - const urlResult = new url.URL(`${trimRight(base, '/')}/${trimLeft(path, '/')}`); - // Appending pretty here to have Elasticsearch do the JSON formatting, as doing - // in JS can lead to data loss (7.0 will get munged into 7, thus losing indication of - // measurement precision) - if (!urlResult.searchParams.get('pretty')) { - urlResult.searchParams.append('pretty', 'true'); - } - return urlResult; -} - -function getProxyHeaders(req: any) { - const headers = Object.create(null); - - // Scope this proto-unsafe functionality to where it is being used. - function extendCommaList(obj: Record, property: string, value: any) { - obj[property] = (obj[property] ? obj[property] + ',' : '') + value; - } - - if (req.info.remotePort && req.info.remoteAddress) { - // see https://git.io/vytQ7 - extendCommaList(headers, 'x-forwarded-for', req.info.remoteAddress); - extendCommaList(headers, 'x-forwarded-port', req.info.remotePort); - extendCommaList(headers, 'x-forwarded-proto', req.server.info.protocol); - extendCommaList(headers, 'x-forwarded-host', req.info.host); - } - - const contentType = req.headers['content-type']; - if (contentType) { - headers['content-type'] = contentType; - } - return headers; -} - -export const createProxyRoute = ({ - hosts, - pathFilters = [/.*/], - getConfigForReq = () => ({}), -}: { - hosts: string[]; - pathFilters: RegExp[]; - getConfigForReq: (...args: any[]) => any; -}) => ({ - path: '/api/console/proxy', - method: 'POST', - config: { - tags: ['access:console'], - payload: { - output: 'stream', - parse: false, - }, - validate: { - payload: true, - query: Joi.object() - .keys({ - method: Joi.string() - .valid('HEAD', 'GET', 'POST', 'PUT', 'DELETE') - .insensitive() - .required(), - path: Joi.string().required(), - }) - .unknown(true), - }, - - pre: [ - function filterPath(req: any) { - const { path } = req.query; - - if (pathFilters.some(re => re.test(path))) { - return null; - } - - const err = Boom.forbidden(); - err.output.payload = `Error connecting to '${path}':\n\nUnable to send requests to that path.` as any; - err.output.headers['content-type'] = 'text/plain'; - throw err; - }, - ], - - handler: async (req: any, h: any) => { - const { payload, query } = req; - const { path, method } = query; - - let esIncomingMessage: IncomingMessage; - - for (let idx = 0; idx < hosts.length; ++idx) { - const host = hosts[idx]; - try { - const uri = toURL(host, path); - - // Because this can technically be provided by a settings-defined proxy config, we need to - // preserve these property names to maintain BWC. - const { timeout, agent, headers, rejectUnauthorized } = getConfigForReq( - req, - uri.toString() - ); - - const requestHeaders = { - ...headers, - ...getProxyHeaders(req), - }; - - esIncomingMessage = await sendRequest({ - method, - headers: requestHeaders, - uri, - timeout, - payload, - rejectUnauthorized, - agent, - }); - - break; - } catch (e) { - if (e.code !== 'ECONNREFUSED') { - throw Boom.boomify(e); - } - if (idx === hosts.length - 1) { - throw Boom.badGateway('Could not reach any configured nodes.'); - } - // Otherwise, try the next host... - } - } - - const { - statusCode, - statusMessage, - headers: { warning }, - } = esIncomingMessage!; - - if (method.toUpperCase() !== 'HEAD') { - return h - .response(esIncomingMessage!) - .code(statusCode) - .header('warning', warning!); - } else { - return h - .response(`${statusCode} - ${statusMessage}`) - .code(statusCode) - .type('text/plain') - .header('warning', warning!); - } - }, - }, -}); diff --git a/src/legacy/core_plugins/console_legacy/index.ts b/src/legacy/core_plugins/console_legacy/index.ts new file mode 100644 index 000000000000..65547e1ee540 --- /dev/null +++ b/src/legacy/core_plugins/console_legacy/index.ts @@ -0,0 +1,51 @@ +/* + * 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. + */ + +import { first } from 'rxjs/operators'; +import { head } from 'lodash'; +import { resolve } from 'path'; +import url from 'url'; + +// TODO: Remove this hack once we can get the ES config we need for Console proxy a better way. +let _legacyEsConfig: any; +export const readLegacyEsConfig = () => { + return _legacyEsConfig; +}; + +// eslint-disable-next-line import/no-default-export +export default function(kibana: any) { + return new kibana.Plugin({ + id: 'console_legacy', + + async init(server: any) { + _legacyEsConfig = await server.newPlatform.__internals.elasticsearch.legacy.config$ + .pipe(first()) + .toPromise(); + }, + + uiExports: { + styleSheetPaths: resolve(__dirname, 'public/styles/index.scss'), + injectDefaultVars: () => ({ + elasticsearchUrl: url.format( + Object.assign(url.parse(head(_legacyEsConfig.hosts)), { auth: false }) + ), + }), + }, + } as any); +} diff --git a/src/legacy/core_plugins/console_legacy/package.json b/src/legacy/core_plugins/console_legacy/package.json new file mode 100644 index 000000000000..b78807daed95 --- /dev/null +++ b/src/legacy/core_plugins/console_legacy/package.json @@ -0,0 +1,4 @@ +{ + "name": "console_legacy", + "version": "kibana" +} diff --git a/src/legacy/core_plugins/console/public/np_ready/application/styles/_app.scss b/src/legacy/core_plugins/console_legacy/public/styles/_app.scss similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/styles/_app.scss rename to src/legacy/core_plugins/console_legacy/public/styles/_app.scss diff --git a/src/legacy/core_plugins/console/public/np_ready/application/styles/components/_help.scss b/src/legacy/core_plugins/console_legacy/public/styles/components/_help.scss similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/styles/components/_help.scss rename to src/legacy/core_plugins/console_legacy/public/styles/components/_help.scss diff --git a/src/legacy/core_plugins/console/public/np_ready/application/styles/components/_history.scss b/src/legacy/core_plugins/console_legacy/public/styles/components/_history.scss similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/styles/components/_history.scss rename to src/legacy/core_plugins/console_legacy/public/styles/components/_history.scss diff --git a/src/legacy/core_plugins/console/public/np_ready/application/styles/components/_index.scss b/src/legacy/core_plugins/console_legacy/public/styles/components/_index.scss similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/styles/components/_index.scss rename to src/legacy/core_plugins/console_legacy/public/styles/components/_index.scss diff --git a/src/legacy/core_plugins/console/public/np_ready/application/styles/index.scss b/src/legacy/core_plugins/console_legacy/public/styles/index.scss similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/styles/index.scss rename to src/legacy/core_plugins/console_legacy/public/styles/index.scss diff --git a/src/legacy/core_plugins/console/common/text_object.ts b/src/plugins/console/common/text_object.ts similarity index 100% rename from src/legacy/core_plugins/console/common/text_object.ts rename to src/plugins/console/common/text_object.ts diff --git a/src/plugins/console/common/types/index.ts b/src/plugins/console/common/types/index.ts new file mode 100644 index 000000000000..65e02b859d1a --- /dev/null +++ b/src/plugins/console/common/types/index.ts @@ -0,0 +1,21 @@ +/* + * 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 * from './models'; +export * from './plugin_config'; diff --git a/src/legacy/core_plugins/console/common/types.ts b/src/plugins/console/common/types/models.ts similarity index 97% rename from src/legacy/core_plugins/console/common/types.ts rename to src/plugins/console/common/types/models.ts index 33d6907ff60b..de118761aea5 100644 --- a/src/legacy/core_plugins/console/common/types.ts +++ b/src/plugins/console/common/types/models.ts @@ -17,7 +17,7 @@ * under the License. */ -import { TextObject } from './text_object'; +import { TextObject } from '../text_object'; export interface IdObject { id: string; diff --git a/src/plugins/console/common/types/plugin_config.ts b/src/plugins/console/common/types/plugin_config.ts new file mode 100644 index 000000000000..965c301d8b08 --- /dev/null +++ b/src/plugins/console/common/types/plugin_config.ts @@ -0,0 +1,22 @@ +/* + * 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 interface PluginServerConfig { + elasticsearchUrl: string; +} diff --git a/src/legacy/core_plugins/console/public/kibana.json b/src/plugins/console/kibana.json similarity index 73% rename from src/legacy/core_plugins/console/public/kibana.json rename to src/plugins/console/kibana.json index c58a5a90fb9f..18f7eb06e98e 100644 --- a/src/legacy/core_plugins/console/public/kibana.json +++ b/src/plugins/console/kibana.json @@ -3,6 +3,6 @@ "version": "kibana", "server": true, "ui": true, - "requiredPlugins": ["home"], + "requiredPlugins": ["dev_tools", "home"], "optionalPlugins": ["usageCollection"] } diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/console_menu.tsx b/src/plugins/console/public/application/components/console_menu.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/console_menu.tsx rename to src/plugins/console/public/application/components/console_menu.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/editor_content_spinner.tsx b/src/plugins/console/public/application/components/editor_content_spinner.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/editor_content_spinner.tsx rename to src/plugins/console/public/application/components/editor_content_spinner.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/editor_example.tsx b/src/plugins/console/public/application/components/editor_example.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/editor_example.tsx rename to src/plugins/console/public/application/components/editor_example.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/help_panel.tsx b/src/plugins/console/public/application/components/help_panel.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/help_panel.tsx rename to src/plugins/console/public/application/components/help_panel.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/index.ts b/src/plugins/console/public/application/components/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/index.ts rename to src/plugins/console/public/application/components/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/settings_modal.tsx b/src/plugins/console/public/application/components/settings_modal.tsx similarity index 98% rename from src/legacy/core_plugins/console/public/np_ready/application/components/settings_modal.tsx rename to src/plugins/console/public/application/components/settings_modal.tsx index 05afdc9b79e0..3cd20bf1bc34 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/components/settings_modal.tsx +++ b/src/plugins/console/public/application/components/settings_modal.tsx @@ -248,7 +248,10 @@ export function DevToolsSettingsModal(props: Props) { } > { + const { stateSetter, ...rest } = opts; + return rest; + })} idToSelectedMap={checkboxIdToSelectedMap} onChange={(e: any) => { onAutocompleteChange(e as AutocompleteOptions); diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/something_went_wrong_callout.tsx b/src/plugins/console/public/application/components/something_went_wrong_callout.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/something_went_wrong_callout.tsx rename to src/plugins/console/public/application/components/something_went_wrong_callout.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/top_nav_menu.tsx b/src/plugins/console/public/application/components/top_nav_menu.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/top_nav_menu.tsx rename to src/plugins/console/public/application/components/top_nav_menu.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/components/welcome_panel.tsx b/src/plugins/console/public/application/components/welcome_panel.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/components/welcome_panel.tsx rename to src/plugins/console/public/application/components/welcome_panel.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/constants/help_example.txt b/src/plugins/console/public/application/constants/help_example.txt similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/constants/help_example.txt rename to src/plugins/console/public/application/constants/help_example.txt diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/console_history/console_history.tsx b/src/plugins/console/public/application/containers/console_history/console_history.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/console_history/console_history.tsx rename to src/plugins/console/public/application/containers/console_history/console_history.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/console_history/history_viewer.tsx b/src/plugins/console/public/application/containers/console_history/history_viewer.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/console_history/history_viewer.tsx rename to src/plugins/console/public/application/containers/console_history/history_viewer.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/console_history/index.ts b/src/plugins/console/public/application/containers/console_history/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/console_history/index.ts rename to src/plugins/console/public/application/containers/console_history/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/editor.tsx b/src/plugins/console/public/application/containers/editor/editor.tsx similarity index 96% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/editor.tsx rename to src/plugins/console/public/application/containers/editor/editor.tsx index b42d791e5acd..5c7fe293651f 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/editor.tsx +++ b/src/plugins/console/public/application/containers/editor/editor.tsx @@ -21,7 +21,7 @@ import React, { useCallback } from 'react'; import { debounce } from 'lodash'; import { EditorContentSpinner } from '../../components'; -import { Panel, PanelsContainer } from '../../../../../../../../plugins/kibana_react/public'; +import { Panel, PanelsContainer } from '../../../../../kibana_react/public'; import { Editor as EditorUI, EditorOutput } from './legacy/console_editor'; import { StorageKeys } from '../../../services'; import { useEditorReadContext, useServicesContext } from '../../contexts'; diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/index.ts b/src/plugins/console/public/application/containers/editor/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/index.ts rename to src/plugins/console/public/application/containers/editor/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/apply_editor_settings.ts b/src/plugins/console/public/application/containers/editor/legacy/console_editor/apply_editor_settings.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/apply_editor_settings.ts rename to src/plugins/console/public/application/containers/editor/legacy/console_editor/apply_editor_settings.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor.test.mock.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.mock.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor.test.mock.tsx rename to src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.mock.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor.test.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx similarity index 99% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor.test.tsx rename to src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx index d4079fcea33f..306cdd396f4f 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor.test.tsx +++ b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx @@ -25,7 +25,7 @@ import { I18nProvider } from '@kbn/i18n/react'; import { act } from 'react-dom/test-utils'; import * as sinon from 'sinon'; -import { notificationServiceMock } from '../../../../../../../../../../../src/core/public/mocks'; +import { notificationServiceMock } from '../../../../../../../../core/public/mocks'; import { nextTick } from 'test_utils/enzyme_helpers'; import { diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor.tsx rename to src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor_output.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/editor_output.tsx rename to src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/index.ts b/src/plugins/console/public/application/containers/editor/legacy/console_editor/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/index.ts rename to src/plugins/console/public/application/containers/editor/legacy/console_editor/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/keyboard_shortcuts.ts b/src/plugins/console/public/application/containers/editor/legacy/console_editor/keyboard_shortcuts.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_editor/keyboard_shortcuts.ts rename to src/plugins/console/public/application/containers/editor/legacy/console_editor/keyboard_shortcuts.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_menu_actions.ts b/src/plugins/console/public/application/containers/editor/legacy/console_menu_actions.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/console_menu_actions.ts rename to src/plugins/console/public/application/containers/editor/legacy/console_menu_actions.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/index.ts b/src/plugins/console/public/application/containers/editor/legacy/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/index.ts rename to src/plugins/console/public/application/containers/editor/legacy/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/subscribe_console_resize_checker.ts b/src/plugins/console/public/application/containers/editor/legacy/subscribe_console_resize_checker.ts similarity index 93% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/subscribe_console_resize_checker.ts rename to src/plugins/console/public/application/containers/editor/legacy/subscribe_console_resize_checker.ts index 1adc56d47927..2d992aadbf15 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/subscribe_console_resize_checker.ts +++ b/src/plugins/console/public/application/containers/editor/legacy/subscribe_console_resize_checker.ts @@ -16,7 +16,8 @@ * specific language governing permissions and limitations * under the License. */ -import { ResizeChecker } from '../../../../../../../../../plugins/kibana_utils/public'; + +import { ResizeChecker } from '../../../../../../kibana_utils/public'; export function subscribeResizeChecker(el: HTMLElement, ...editors: any[]) { const checker = new ResizeChecker(el); diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/use_ui_ace_keyboard_mode.tsx b/src/plugins/console/public/application/containers/editor/legacy/use_ui_ace_keyboard_mode.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/editor/legacy/use_ui_ace_keyboard_mode.tsx rename to src/plugins/console/public/application/containers/editor/legacy/use_ui_ace_keyboard_mode.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/index.ts b/src/plugins/console/public/application/containers/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/index.ts rename to src/plugins/console/public/application/containers/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/main/get_top_nav.ts b/src/plugins/console/public/application/containers/main/get_top_nav.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/main/get_top_nav.ts rename to src/plugins/console/public/application/containers/main/get_top_nav.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/main/index.ts b/src/plugins/console/public/application/containers/main/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/main/index.ts rename to src/plugins/console/public/application/containers/main/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/main/main.tsx b/src/plugins/console/public/application/containers/main/main.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/main/main.tsx rename to src/plugins/console/public/application/containers/main/main.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/containers/settings.tsx b/src/plugins/console/public/application/containers/settings.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/containers/settings.tsx rename to src/plugins/console/public/application/containers/settings.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/contexts/create_use_context.ts b/src/plugins/console/public/application/contexts/create_use_context.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/contexts/create_use_context.ts rename to src/plugins/console/public/application/contexts/create_use_context.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/contexts/editor_context/editor_context.tsx b/src/plugins/console/public/application/contexts/editor_context/editor_context.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/contexts/editor_context/editor_context.tsx rename to src/plugins/console/public/application/contexts/editor_context/editor_context.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/contexts/editor_context/editor_registry.ts b/src/plugins/console/public/application/contexts/editor_context/editor_registry.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/contexts/editor_context/editor_registry.ts rename to src/plugins/console/public/application/contexts/editor_context/editor_registry.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/contexts/editor_context/index.ts b/src/plugins/console/public/application/contexts/editor_context/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/contexts/editor_context/index.ts rename to src/plugins/console/public/application/contexts/editor_context/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/contexts/index.ts b/src/plugins/console/public/application/contexts/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/contexts/index.ts rename to src/plugins/console/public/application/contexts/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/contexts/request_context.tsx b/src/plugins/console/public/application/contexts/request_context.tsx similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/contexts/request_context.tsx rename to src/plugins/console/public/application/contexts/request_context.tsx diff --git a/src/legacy/core_plugins/console/public/np_ready/application/contexts/services_context.tsx b/src/plugins/console/public/application/contexts/services_context.tsx similarity index 96% rename from src/legacy/core_plugins/console/public/np_ready/application/contexts/services_context.tsx rename to src/plugins/console/public/application/contexts/services_context.tsx index d7f036e1aecb..4393cab4adbc 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/contexts/services_context.tsx +++ b/src/plugins/console/public/application/contexts/services_context.tsx @@ -20,7 +20,7 @@ import React, { createContext, useContext } from 'react'; import { NotificationsSetup } from 'kibana/public'; import { History, Storage, Settings } from '../../services'; -import { ObjectStorageClient } from '../../../../common/types'; +import { ObjectStorageClient } from '../../../common/types'; import { MetricsTracker } from '../../types'; export interface ContextValue { diff --git a/src/legacy/core_plugins/console/public/np_ready/application/factories/index.ts b/src/plugins/console/public/application/factories/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/factories/index.ts rename to src/plugins/console/public/application/factories/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/factories/token_iterator.ts b/src/plugins/console/public/application/factories/token_iterator.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/factories/token_iterator.ts rename to src/plugins/console/public/application/factories/token_iterator.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/index.ts b/src/plugins/console/public/application/hooks/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/index.ts rename to src/plugins/console/public/application/hooks/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_data_init/data_migration.ts b/src/plugins/console/public/application/hooks/use_data_init/data_migration.ts similarity index 95% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_data_init/data_migration.ts rename to src/plugins/console/public/application/hooks/use_data_init/data_migration.ts index 08acd78ba2b8..67d39c37a2f4 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_data_init/data_migration.ts +++ b/src/plugins/console/public/application/hooks/use_data_init/data_migration.ts @@ -18,7 +18,7 @@ */ import { History } from '../../../services'; -import { ObjectStorageClient } from '../../../../../common/types'; +import { ObjectStorageClient } from '../../../../common/types'; export interface Dependencies { history: History; diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_data_init/index.ts b/src/plugins/console/public/application/hooks/use_data_init/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_data_init/index.ts rename to src/plugins/console/public/application/hooks/use_data_init/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_data_init/use_data_init.ts b/src/plugins/console/public/application/hooks/use_data_init/use_data_init.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_data_init/use_data_init.ts rename to src/plugins/console/public/application/hooks/use_data_init/use_data_init.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_restore_request_from_history/index.ts b/src/plugins/console/public/application/hooks/use_restore_request_from_history/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_restore_request_from_history/index.ts rename to src/plugins/console/public/application/hooks/use_restore_request_from_history/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_restore_request_from_history/restore_request_from_history.ts b/src/plugins/console/public/application/hooks/use_restore_request_from_history/restore_request_from_history.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_restore_request_from_history/restore_request_from_history.ts rename to src/plugins/console/public/application/hooks/use_restore_request_from_history/restore_request_from_history.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_restore_request_from_history/use_restore_request_from_history.ts b/src/plugins/console/public/application/hooks/use_restore_request_from_history/use_restore_request_from_history.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_restore_request_from_history/use_restore_request_from_history.ts rename to src/plugins/console/public/application/hooks/use_restore_request_from_history/use_restore_request_from_history.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_save_current_text_object.ts b/src/plugins/console/public/application/hooks/use_save_current_text_object.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_save_current_text_object.ts rename to src/plugins/console/public/application/hooks/use_save_current_text_object.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/index.ts b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/index.ts rename to src/plugins/console/public/application/hooks/use_send_current_request_to_es/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/send_request_to_es.ts b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/send_request_to_es.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/send_request_to_es.ts rename to src/plugins/console/public/application/hooks/use_send_current_request_to_es/send_request_to_es.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/track.ts b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/track.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/track.ts rename to src/plugins/console/public/application/hooks/use_send_current_request_to_es/track.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts rename to src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/hooks/use_set_input_editor.ts b/src/plugins/console/public/application/hooks/use_set_input_editor.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/hooks/use_set_input_editor.ts rename to src/plugins/console/public/application/hooks/use_set_input_editor.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/index.tsx b/src/plugins/console/public/application/index.tsx similarity index 81% rename from src/legacy/core_plugins/console/public/np_ready/application/index.tsx rename to src/plugins/console/public/application/index.tsx index efd0f2ba8602..1fef52da6f31 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/index.tsx +++ b/src/plugins/console/public/application/index.tsx @@ -18,27 +18,38 @@ */ import React from 'react'; +import { render, unmountComponentAtNode } from 'react-dom'; import { NotificationsSetup } from 'src/core/public'; import { ServicesContextProvider, EditorContextProvider, RequestContextProvider } from './contexts'; import { Main } from './containers'; import { createStorage, createHistory, createSettings, Settings } from '../services'; import * as localStorageObjectClient from '../lib/local_storage_object_client'; import { createUsageTracker } from '../services/tracker'; +import { UsageCollectionSetup } from '../../../usage_collection/public'; let settingsRef: Settings; export function legacyBackDoorToSettings() { return settingsRef; } -export function boot(deps: { +export interface BootDependencies { docLinkVersion: string; I18nContext: any; notifications: NotificationsSetup; elasticsearchUrl: string; -}) { - const { I18nContext, notifications, docLinkVersion, elasticsearchUrl } = deps; + usageCollection?: UsageCollectionSetup; + element: HTMLElement; +} - const trackUiMetric = createUsageTracker(); +export function renderApp({ + I18nContext, + notifications, + docLinkVersion, + elasticsearchUrl, + usageCollection, + element, +}: BootDependencies) { + const trackUiMetric = createUsageTracker(usageCollection); trackUiMetric.load('opened_app'); const storage = createStorage({ @@ -50,7 +61,7 @@ export function boot(deps: { const objectStorageClient = localStorageObjectClient.create(storage); settingsRef = settings; - return ( + render( - + , + element ); + + return () => unmountComponentAtNode(element); } diff --git a/src/legacy/core_plugins/console/public/np_ready/application/logo.svg b/src/plugins/console/public/application/logo.svg similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/logo.svg rename to src/plugins/console/public/application/logo.svg diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/index.ts b/src/plugins/console/public/application/models/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/index.ts rename to src/plugins/console/public/application/models/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/__tests__/input_tokenization.test.js b/src/plugins/console/public/application/models/legacy_core_editor/__tests__/input_tokenization.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/__tests__/input_tokenization.test.js rename to src/plugins/console/public/application/models/legacy_core_editor/__tests__/input_tokenization.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/__tests__/output_tokenization.test.js b/src/plugins/console/public/application/models/legacy_core_editor/__tests__/output_tokenization.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/__tests__/output_tokenization.test.js rename to src/plugins/console/public/application/models/legacy_core_editor/__tests__/output_tokenization.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/create.ts b/src/plugins/console/public/application/models/legacy_core_editor/create.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/create.ts rename to src/plugins/console/public/application/models/legacy_core_editor/create.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/create_readonly.ts b/src/plugins/console/public/application/models/legacy_core_editor/create_readonly.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/create_readonly.ts rename to src/plugins/console/public/application/models/legacy_core_editor/create_readonly.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/index.ts b/src/plugins/console/public/application/models/legacy_core_editor/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/index.ts rename to src/plugins/console/public/application/models/legacy_core_editor/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/legacy_core_editor.test.mocks.ts b/src/plugins/console/public/application/models/legacy_core_editor/legacy_core_editor.test.mocks.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/legacy_core_editor.test.mocks.ts rename to src/plugins/console/public/application/models/legacy_core_editor/legacy_core_editor.test.mocks.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/legacy_core_editor.ts b/src/plugins/console/public/application/models/legacy_core_editor/legacy_core_editor.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/legacy_core_editor.ts rename to src/plugins/console/public/application/models/legacy_core_editor/legacy_core_editor.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/elasticsearch_sql_highlight_rules.ts b/src/plugins/console/public/application/models/legacy_core_editor/mode/elasticsearch_sql_highlight_rules.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/elasticsearch_sql_highlight_rules.ts rename to src/plugins/console/public/application/models/legacy_core_editor/mode/elasticsearch_sql_highlight_rules.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/input.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/input.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/input.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/input.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/input_highlight_rules.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/input_highlight_rules.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/input_highlight_rules.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/input_highlight_rules.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/output.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/output.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/output.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/output.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/output_highlight_rules.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/output_highlight_rules.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/output_highlight_rules.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/output_highlight_rules.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/script.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/script.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/script.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/script.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/script_highlight_rules.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/script_highlight_rules.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/script_highlight_rules.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/script_highlight_rules.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/worker/index.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/worker/index.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/worker/index.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/worker/index.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/worker/worker.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/worker/worker.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/worker/worker.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/worker/worker.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/x_json_highlight_rules.js b/src/plugins/console/public/application/models/legacy_core_editor/mode/x_json_highlight_rules.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/mode/x_json_highlight_rules.js rename to src/plugins/console/public/application/models/legacy_core_editor/mode/x_json_highlight_rules.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/smart_resize.ts b/src/plugins/console/public/application/models/legacy_core_editor/smart_resize.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/smart_resize.ts rename to src/plugins/console/public/application/models/legacy_core_editor/smart_resize.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/theme_sense_dark.js b/src/plugins/console/public/application/models/legacy_core_editor/theme_sense_dark.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/legacy_core_editor/theme_sense_dark.js rename to src/plugins/console/public/application/models/legacy_core_editor/theme_sense_dark.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/__tests__/editor_input1.txt b/src/plugins/console/public/application/models/sense_editor/__tests__/editor_input1.txt similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/__tests__/editor_input1.txt rename to src/plugins/console/public/application/models/sense_editor/__tests__/editor_input1.txt diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/__tests__/integration.test.js b/src/plugins/console/public/application/models/sense_editor/__tests__/integration.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/__tests__/integration.test.js rename to src/plugins/console/public/application/models/sense_editor/__tests__/integration.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/__tests__/sense_editor.test.js b/src/plugins/console/public/application/models/sense_editor/__tests__/sense_editor.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/__tests__/sense_editor.test.js rename to src/plugins/console/public/application/models/sense_editor/__tests__/sense_editor.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/create.ts b/src/plugins/console/public/application/models/sense_editor/create.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/create.ts rename to src/plugins/console/public/application/models/sense_editor/create.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/curl.ts b/src/plugins/console/public/application/models/sense_editor/curl.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/curl.ts rename to src/plugins/console/public/application/models/sense_editor/curl.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/index.ts b/src/plugins/console/public/application/models/sense_editor/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/index.ts rename to src/plugins/console/public/application/models/sense_editor/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/sense_editor.test.mocks.ts b/src/plugins/console/public/application/models/sense_editor/sense_editor.test.mocks.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/sense_editor.test.mocks.ts rename to src/plugins/console/public/application/models/sense_editor/sense_editor.test.mocks.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/sense_editor.ts b/src/plugins/console/public/application/models/sense_editor/sense_editor.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/models/sense_editor/sense_editor.ts rename to src/plugins/console/public/application/models/sense_editor/sense_editor.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/application/stores/editor.ts b/src/plugins/console/public/application/stores/editor.ts similarity index 96% rename from src/legacy/core_plugins/console/public/np_ready/application/stores/editor.ts rename to src/plugins/console/public/application/stores/editor.ts index 844eacd9b91a..73c29e7ff857 100644 --- a/src/legacy/core_plugins/console/public/np_ready/application/stores/editor.ts +++ b/src/plugins/console/public/application/stores/editor.ts @@ -21,7 +21,7 @@ import { Reducer } from 'react'; import { produce } from 'immer'; import { identity } from 'fp-ts/lib/function'; import { DevToolsSettings } from '../../services'; -import { TextObject } from '../../../../common/text_object'; +import { TextObject } from '../../../common/text_object'; export interface Store { ready: boolean; diff --git a/src/legacy/core_plugins/console/public/np_ready/application/stores/request.ts b/src/plugins/console/public/application/stores/request.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/application/stores/request.ts rename to src/plugins/console/public/application/stores/request.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/index.ts b/src/plugins/console/public/index.ts similarity index 85% rename from src/legacy/core_plugins/console/public/np_ready/index.ts rename to src/plugins/console/public/index.ts index 045420f401e3..2af9d1d16af0 100644 --- a/src/legacy/core_plugins/console/public/np_ready/index.ts +++ b/src/plugins/console/public/index.ts @@ -17,12 +17,10 @@ * under the License. */ -import { PluginInitializerContext } from 'kibana/public'; - import { ConsoleUIPlugin } from './plugin'; export { ConsoleUIPlugin as Plugin }; -export function plugin(ctx: PluginInitializerContext) { - return new ConsoleUIPlugin(ctx); +export function plugin() { + return new ConsoleUIPlugin(); } diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/ace_token_provider/index.ts b/src/plugins/console/public/lib/ace_token_provider/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/ace_token_provider/index.ts rename to src/plugins/console/public/lib/ace_token_provider/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/ace_token_provider/token_provider.test.ts b/src/plugins/console/public/lib/ace_token_provider/token_provider.test.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/ace_token_provider/token_provider.test.ts rename to src/plugins/console/public/lib/ace_token_provider/token_provider.test.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/ace_token_provider/token_provider.ts b/src/plugins/console/public/lib/ace_token_provider/token_provider.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/ace_token_provider/token_provider.ts rename to src/plugins/console/public/lib/ace_token_provider/token_provider.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/__tests__/url_autocomplete.test.js b/src/plugins/console/public/lib/autocomplete/__tests__/url_autocomplete.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/__tests__/url_autocomplete.test.js rename to src/plugins/console/public/lib/autocomplete/__tests__/url_autocomplete.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/__tests__/url_params.test.js b/src/plugins/console/public/lib/autocomplete/__tests__/url_params.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/__tests__/url_params.test.js rename to src/plugins/console/public/lib/autocomplete/__tests__/url_params.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/autocomplete.ts b/src/plugins/console/public/lib/autocomplete/autocomplete.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/autocomplete.ts rename to src/plugins/console/public/lib/autocomplete/autocomplete.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/body_completer.js b/src/plugins/console/public/lib/autocomplete/body_completer.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/body_completer.js rename to src/plugins/console/public/lib/autocomplete/body_completer.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/accept_endpoint_component.js b/src/plugins/console/public/lib/autocomplete/components/accept_endpoint_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/accept_endpoint_component.js rename to src/plugins/console/public/lib/autocomplete/components/accept_endpoint_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/autocomplete_component.js b/src/plugins/console/public/lib/autocomplete/components/autocomplete_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/autocomplete_component.js rename to src/plugins/console/public/lib/autocomplete/components/autocomplete_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/conditional_proxy.js b/src/plugins/console/public/lib/autocomplete/components/conditional_proxy.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/conditional_proxy.js rename to src/plugins/console/public/lib/autocomplete/components/conditional_proxy.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/constant_component.js b/src/plugins/console/public/lib/autocomplete/components/constant_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/constant_component.js rename to src/plugins/console/public/lib/autocomplete/components/constant_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/field_autocomplete_component.js b/src/plugins/console/public/lib/autocomplete/components/field_autocomplete_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/field_autocomplete_component.js rename to src/plugins/console/public/lib/autocomplete/components/field_autocomplete_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/full_request_component.ts b/src/plugins/console/public/lib/autocomplete/components/full_request_component.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/full_request_component.ts rename to src/plugins/console/public/lib/autocomplete/components/full_request_component.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/global_only_component.js b/src/plugins/console/public/lib/autocomplete/components/global_only_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/global_only_component.js rename to src/plugins/console/public/lib/autocomplete/components/global_only_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/id_autocomplete_component.js b/src/plugins/console/public/lib/autocomplete/components/id_autocomplete_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/id_autocomplete_component.js rename to src/plugins/console/public/lib/autocomplete/components/id_autocomplete_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/index.js b/src/plugins/console/public/lib/autocomplete/components/index.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/index.js rename to src/plugins/console/public/lib/autocomplete/components/index.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/index_autocomplete_component.js b/src/plugins/console/public/lib/autocomplete/components/index_autocomplete_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/index_autocomplete_component.js rename to src/plugins/console/public/lib/autocomplete/components/index_autocomplete_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/list_component.js b/src/plugins/console/public/lib/autocomplete/components/list_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/list_component.js rename to src/plugins/console/public/lib/autocomplete/components/list_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/object_component.js b/src/plugins/console/public/lib/autocomplete/components/object_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/object_component.js rename to src/plugins/console/public/lib/autocomplete/components/object_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/shared_component.js b/src/plugins/console/public/lib/autocomplete/components/shared_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/shared_component.js rename to src/plugins/console/public/lib/autocomplete/components/shared_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/simple_param_component.js b/src/plugins/console/public/lib/autocomplete/components/simple_param_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/simple_param_component.js rename to src/plugins/console/public/lib/autocomplete/components/simple_param_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/template_autocomplete_component.js b/src/plugins/console/public/lib/autocomplete/components/template_autocomplete_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/template_autocomplete_component.js rename to src/plugins/console/public/lib/autocomplete/components/template_autocomplete_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/type_autocomplete_component.js b/src/plugins/console/public/lib/autocomplete/components/type_autocomplete_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/type_autocomplete_component.js rename to src/plugins/console/public/lib/autocomplete/components/type_autocomplete_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/url_pattern_matcher.js b/src/plugins/console/public/lib/autocomplete/components/url_pattern_matcher.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/url_pattern_matcher.js rename to src/plugins/console/public/lib/autocomplete/components/url_pattern_matcher.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/username_autocomplete_component.js b/src/plugins/console/public/lib/autocomplete/components/username_autocomplete_component.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/components/username_autocomplete_component.js rename to src/plugins/console/public/lib/autocomplete/components/username_autocomplete_component.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/engine.js b/src/plugins/console/public/lib/autocomplete/engine.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/engine.js rename to src/plugins/console/public/lib/autocomplete/engine.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/get_endpoint_from_position.ts b/src/plugins/console/public/lib/autocomplete/get_endpoint_from_position.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/get_endpoint_from_position.ts rename to src/plugins/console/public/lib/autocomplete/get_endpoint_from_position.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/url_params.js b/src/plugins/console/public/lib/autocomplete/url_params.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/autocomplete/url_params.js rename to src/plugins/console/public/lib/autocomplete/url_params.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/curl_parsing/__tests__/curl_parsing.test.js b/src/plugins/console/public/lib/curl_parsing/__tests__/curl_parsing.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/curl_parsing/__tests__/curl_parsing.test.js rename to src/plugins/console/public/lib/curl_parsing/__tests__/curl_parsing.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/curl_parsing/__tests__/curl_parsing.txt b/src/plugins/console/public/lib/curl_parsing/__tests__/curl_parsing.txt similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/curl_parsing/__tests__/curl_parsing.txt rename to src/plugins/console/public/lib/curl_parsing/__tests__/curl_parsing.txt diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/curl_parsing/curl.js b/src/plugins/console/public/lib/curl_parsing/curl.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/curl_parsing/curl.js rename to src/plugins/console/public/lib/curl_parsing/curl.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/es/__tests__/content_type.test.js b/src/plugins/console/public/lib/es/__tests__/content_type.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/es/__tests__/content_type.test.js rename to src/plugins/console/public/lib/es/__tests__/content_type.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/es/es.js b/src/plugins/console/public/lib/es/es.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/es/es.js rename to src/plugins/console/public/lib/es/es.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/kb/__tests__/kb.test.js b/src/plugins/console/public/lib/kb/__tests__/kb.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/kb/__tests__/kb.test.js rename to src/plugins/console/public/lib/kb/__tests__/kb.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/kb/api.js b/src/plugins/console/public/lib/kb/api.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/kb/api.js rename to src/plugins/console/public/lib/kb/api.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/kb/index.js b/src/plugins/console/public/lib/kb/index.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/kb/index.js rename to src/plugins/console/public/lib/kb/index.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/kb/kb.js b/src/plugins/console/public/lib/kb/kb.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/kb/kb.js rename to src/plugins/console/public/lib/kb/kb.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/create.ts b/src/plugins/console/public/lib/local_storage_object_client/create.ts similarity index 88% rename from src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/create.ts rename to src/plugins/console/public/lib/local_storage_object_client/create.ts index 36948b9acb96..503387f7b4a4 100644 --- a/src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/create.ts +++ b/src/plugins/console/public/lib/local_storage_object_client/create.ts @@ -18,8 +18,8 @@ */ import { Storage } from '../../services'; -import { ObjectStorageClient } from '../../../../common/types'; -import { TextObject, textObjectTypeName } from '../../../../common/text_object'; +import { ObjectStorageClient } from '../../../common/types'; +import { TextObject, textObjectTypeName } from '../../../common/text_object'; import { LocalObjectStorage } from './local_storage_object_client'; export const create = (storage: Storage): ObjectStorageClient => { diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/index.ts b/src/plugins/console/public/lib/local_storage_object_client/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/index.ts rename to src/plugins/console/public/lib/local_storage_object_client/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/local_storage_object_client.ts b/src/plugins/console/public/lib/local_storage_object_client/local_storage_object_client.ts similarity index 96% rename from src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/local_storage_object_client.ts rename to src/plugins/console/public/lib/local_storage_object_client/local_storage_object_client.ts index 41c88d23b253..8eac345898f9 100644 --- a/src/legacy/core_plugins/console/public/np_ready/lib/local_storage_object_client/local_storage_object_client.ts +++ b/src/plugins/console/public/lib/local_storage_object_client/local_storage_object_client.ts @@ -18,7 +18,7 @@ */ import uuid from 'uuid'; -import { ObjectStorage, IdObject } from '../../../../common/types'; +import { ObjectStorage, IdObject } from '../../../common/types'; import { Storage } from '../../services'; export class LocalObjectStorage implements ObjectStorage { diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/mappings/__tests__/mapping.test.js b/src/plugins/console/public/lib/mappings/__tests__/mapping.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/mappings/__tests__/mapping.test.js rename to src/plugins/console/public/lib/mappings/__tests__/mapping.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/mappings/mappings.js b/src/plugins/console/public/lib/mappings/mappings.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/mappings/mappings.js rename to src/plugins/console/public/lib/mappings/mappings.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/row_parser.ts b/src/plugins/console/public/lib/row_parser.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/row_parser.ts rename to src/plugins/console/public/lib/row_parser.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/token_iterator/index.ts b/src/plugins/console/public/lib/token_iterator/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/token_iterator/index.ts rename to src/plugins/console/public/lib/token_iterator/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/token_iterator/token_iterator.test.ts b/src/plugins/console/public/lib/token_iterator/token_iterator.test.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/token_iterator/token_iterator.test.ts rename to src/plugins/console/public/lib/token_iterator/token_iterator.test.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/token_iterator/token_iterator.ts b/src/plugins/console/public/lib/token_iterator/token_iterator.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/token_iterator/token_iterator.ts rename to src/plugins/console/public/lib/token_iterator/token_iterator.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/utils/__tests__/utils.test.js b/src/plugins/console/public/lib/utils/__tests__/utils.test.js similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/utils/__tests__/utils.test.js rename to src/plugins/console/public/lib/utils/__tests__/utils.test.js diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/utils/__tests__/utils_string_collapsing.txt b/src/plugins/console/public/lib/utils/__tests__/utils_string_collapsing.txt similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/utils/__tests__/utils_string_collapsing.txt rename to src/plugins/console/public/lib/utils/__tests__/utils_string_collapsing.txt diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/utils/__tests__/utils_string_expanding.txt b/src/plugins/console/public/lib/utils/__tests__/utils_string_expanding.txt similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/utils/__tests__/utils_string_expanding.txt rename to src/plugins/console/public/lib/utils/__tests__/utils_string_expanding.txt diff --git a/src/legacy/core_plugins/console/public/np_ready/lib/utils/utils.ts b/src/plugins/console/public/lib/utils/utils.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/lib/utils/utils.ts rename to src/plugins/console/public/lib/utils/utils.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/plugin.ts b/src/plugins/console/public/plugin.ts similarity index 58% rename from src/legacy/core_plugins/console/public/np_ready/plugin.ts rename to src/plugins/console/public/plugin.ts index 22351ae95ba8..71a5e150a9f0 100644 --- a/src/legacy/core_plugins/console/public/np_ready/plugin.ts +++ b/src/plugins/console/public/plugin.ts @@ -17,23 +17,21 @@ * under the License. */ -import { render, unmountComponentAtNode } from 'react-dom'; import { i18n } from '@kbn/i18n'; -import { PluginInitializerContext, Plugin, CoreStart, CoreSetup } from 'src/core/public'; -import { XPluginSet } from '../legacy'; +import { CoreSetup, CoreStart, Plugin } from 'kibana/public'; -export class ConsoleUIPlugin implements Plugin { - // @ts-ignore - constructor(private readonly ctx: PluginInitializerContext) {} +import { FeatureCatalogueCategory } from '../../home/public'; - async setup({ notifications }: CoreSetup, pluginSet: XPluginSet) { - const { - __LEGACY: { I18nContext, elasticsearchUrl, category }, - dev_tools, - home, - } = pluginSet; +import { AppSetupUIPluginDependencies } from './types'; +export class ConsoleUIPlugin implements Plugin { + constructor() {} + + async setup( + { notifications, getStartServices }: CoreSetup, + { dev_tools, home, usageCollection }: AppSetupUIPluginDependencies + ) { home.featureCatalogue.register({ id: 'console', title: i18n.translate('console.devToolsTitle', { @@ -45,7 +43,7 @@ export class ConsoleUIPlugin implements Plugin { icon: 'consoleApp', path: '/app/kibana#/dev_tools/console', showOnHomePage: true, - category, + category: FeatureCatalogueCategory.ADMIN, }); dev_tools.register({ @@ -55,20 +53,21 @@ export class ConsoleUIPlugin implements Plugin { defaultMessage: 'Console', }), enableRouting: false, - async mount({ core: { docLinks } }, { element }) { - const { boot } = await import('./application'); - render( - boot({ - docLinkVersion: docLinks.DOC_LINK_VERSION, - I18nContext, - notifications, - elasticsearchUrl, - }), - element - ); - return () => { - unmountComponentAtNode(element); - }; + mount: async ({ core: { docLinks, i18n: i18nDep } }, { element }) => { + const { renderApp } = await import('./application'); + const [{ injectedMetadata }] = await getStartServices(); + const elasticsearchUrl = injectedMetadata.getInjectedVar( + 'elasticsearchUrl', + 'http://localhost:9200' + ) as string; + return renderApp({ + docLinkVersion: docLinks.DOC_LINK_VERSION, + I18nContext: i18nDep.Context, + notifications, + elasticsearchUrl, + usageCollection, + element, + }); }, }); } diff --git a/src/legacy/core_plugins/console/public/np_ready/services/history.ts b/src/plugins/console/public/services/history.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/services/history.ts rename to src/plugins/console/public/services/history.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/services/index.ts b/src/plugins/console/public/services/index.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/services/index.ts rename to src/plugins/console/public/services/index.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/services/settings.ts b/src/plugins/console/public/services/settings.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/services/settings.ts rename to src/plugins/console/public/services/settings.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/services/storage.ts b/src/plugins/console/public/services/storage.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/services/storage.ts rename to src/plugins/console/public/services/storage.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/services/tracker.ts b/src/plugins/console/public/services/tracker.ts similarity index 62% rename from src/legacy/core_plugins/console/public/np_ready/services/tracker.ts rename to src/plugins/console/public/services/tracker.ts index 13d5f875b3c6..f5abcd145d0f 100644 --- a/src/legacy/core_plugins/console/public/np_ready/services/tracker.ts +++ b/src/plugins/console/public/services/tracker.ts @@ -17,15 +17,22 @@ * under the License. */ -import { METRIC_TYPE } from '@kbn/analytics'; +import { METRIC_TYPE, UiStatsMetricType } from '@kbn/analytics'; import { MetricsTracker } from '../types'; -import { createUiStatsReporter } from '../../../../ui_metric/public'; +import { UsageCollectionSetup } from '../../../usage_collection/public'; const APP_TRACKER_NAME = 'console'; -export const createUsageTracker = (): MetricsTracker => { - const track = createUiStatsReporter(APP_TRACKER_NAME); + +export const createUsageTracker = (usageCollection?: UsageCollectionSetup): MetricsTracker => { + const track = (type: UiStatsMetricType, name: string) => + usageCollection?.reportUiStats(APP_TRACKER_NAME, type, name); + return { - count: (eventName: string) => track(METRIC_TYPE.COUNT, eventName), - load: (eventName: string) => track(METRIC_TYPE.LOADED, eventName), + count: (eventName: string) => { + track(METRIC_TYPE.COUNT, eventName); + }, + load: (eventName: string) => { + track(METRIC_TYPE.LOADED, eventName); + }, }; }; diff --git a/src/legacy/core_plugins/console/public/np_ready/types/common.ts b/src/plugins/console/public/types/common.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/types/common.ts rename to src/plugins/console/public/types/common.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/types/core_editor.ts b/src/plugins/console/public/types/core_editor.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/types/core_editor.ts rename to src/plugins/console/public/types/core_editor.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/types/index.ts b/src/plugins/console/public/types/index.ts similarity index 95% rename from src/legacy/core_plugins/console/public/np_ready/types/index.ts rename to src/plugins/console/public/types/index.ts index 78c6b6c8f55c..555a0ea82c52 100644 --- a/src/legacy/core_plugins/console/public/np_ready/types/index.ts +++ b/src/plugins/console/public/types/index.ts @@ -17,6 +17,7 @@ * under the License. */ +export * from './plugin_dependencies'; export * from './core_editor'; export * from './token'; export * from './tokens_provider'; diff --git a/src/plugins/console/public/types/plugin_dependencies.ts b/src/plugins/console/public/types/plugin_dependencies.ts new file mode 100644 index 000000000000..6bc4ff25ee44 --- /dev/null +++ b/src/plugins/console/public/types/plugin_dependencies.ts @@ -0,0 +1,27 @@ +/* + * 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. + */ +import { HomePublicPluginSetup } from '../../../home/public'; +import { DevToolsSetup } from '../../../dev_tools/public'; +import { UsageCollectionSetup } from '../../../usage_collection/public'; + +export interface AppSetupUIPluginDependencies { + home: HomePublicPluginSetup; + dev_tools: DevToolsSetup; + usageCollection?: UsageCollectionSetup; +} diff --git a/src/legacy/core_plugins/console/public/np_ready/types/token.ts b/src/plugins/console/public/types/token.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/types/token.ts rename to src/plugins/console/public/types/token.ts diff --git a/src/legacy/core_plugins/console/public/np_ready/types/tokens_provider.ts b/src/plugins/console/public/types/tokens_provider.ts similarity index 100% rename from src/legacy/core_plugins/console/public/np_ready/types/tokens_provider.ts rename to src/plugins/console/public/types/tokens_provider.ts diff --git a/src/legacy/core_plugins/console/server/__tests__/elasticsearch_proxy_config.js b/src/plugins/console/server/__tests__/elasticsearch_proxy_config.js similarity index 98% rename from src/legacy/core_plugins/console/server/__tests__/elasticsearch_proxy_config.js rename to src/plugins/console/server/__tests__/elasticsearch_proxy_config.js index ec7d256975b2..df8b49b0a089 100644 --- a/src/legacy/core_plugins/console/server/__tests__/elasticsearch_proxy_config.js +++ b/src/plugins/console/server/__tests__/elasticsearch_proxy_config.js @@ -19,7 +19,7 @@ import expect from '@kbn/expect'; import moment from 'moment'; -import { getElasticsearchProxyConfig } from '../elasticsearch_proxy_config'; +import { getElasticsearchProxyConfig } from '../lib/elasticsearch_proxy_config'; import https from 'https'; import http from 'http'; diff --git a/src/legacy/core_plugins/console/server/__tests__/proxy_config.js b/src/plugins/console/server/__tests__/proxy_config.js similarity index 99% rename from src/legacy/core_plugins/console/server/__tests__/proxy_config.js rename to src/plugins/console/server/__tests__/proxy_config.js index 2a221aa26116..b0b85e6bb7d0 100644 --- a/src/legacy/core_plugins/console/server/__tests__/proxy_config.js +++ b/src/plugins/console/server/__tests__/proxy_config.js @@ -24,7 +24,7 @@ import sinon from 'sinon'; import https, { Agent as HttpsAgent } from 'https'; import { parse as parseUrl } from 'url'; -import { ProxyConfig } from '../proxy_config'; +import { ProxyConfig } from '../lib/proxy_config'; const matchGoogle = { protocol: 'https', diff --git a/src/legacy/core_plugins/console/server/__tests__/proxy_config_collection.js b/src/plugins/console/server/__tests__/proxy_config_collection.js similarity index 98% rename from src/legacy/core_plugins/console/server/__tests__/proxy_config_collection.js rename to src/plugins/console/server/__tests__/proxy_config_collection.js index 1791ca9865d2..e1bc099ac1e8 100644 --- a/src/legacy/core_plugins/console/server/__tests__/proxy_config_collection.js +++ b/src/plugins/console/server/__tests__/proxy_config_collection.js @@ -24,7 +24,7 @@ import sinon from 'sinon'; import fs from 'fs'; import { Agent as HttpsAgent } from 'https'; -import { ProxyConfigCollection } from '../proxy_config_collection'; +import { ProxyConfigCollection } from '../lib/proxy_config_collection'; describe('ProxyConfigCollection', function() { beforeEach(function() { diff --git a/src/legacy/core_plugins/console/server/__tests__/proxy_route/body.js b/src/plugins/console/server/__tests__/proxy_route/body.test.ts similarity index 63% rename from src/legacy/core_plugins/console/server/__tests__/proxy_route/body.js rename to src/plugins/console/server/__tests__/proxy_route/body.test.ts index 923567769a6b..252009a8977f 100644 --- a/src/legacy/core_plugins/console/server/__tests__/proxy_route/body.js +++ b/src/plugins/console/server/__tests__/proxy_route/body.test.ts @@ -16,79 +16,83 @@ * specific language governing permissions and limitations * under the License. */ +import { getProxyRouteHandlerDeps } from './mocks'; -import sinon from 'sinon'; import expect from '@kbn/expect'; -import { Server } from 'hapi'; +import { Readable } from 'stream'; + +import { kibanaResponseFactory } from '../../../../../core/server'; +import { createHandler } from '../../routes/api/console/proxy/create_handler'; +import * as requestModule from '../../lib/proxy_request'; import { createResponseStub } from './stubs'; -import { createProxyRoute } from '../../'; -import * as requestModule from '../../request'; describe('Console Proxy Route', () => { - const sandbox = sinon.createSandbox(); - const teardowns = []; - let request; + let request: any; beforeEach(() => { - request = async (method, path, response) => { - sandbox.stub(requestModule, 'sendRequest').callsFake(createResponseStub(response)); - const server = new Server(); - server.route( - createProxyRoute({ - hosts: ['http://localhost:9200'], - }) + request = (method: string, path: string, response: string) => { + (requestModule.proxyRequest as jest.Mock).mockResolvedValue(createResponseStub(response)); + const handler = createHandler(getProxyRouteHandlerDeps({})); + + return handler( + {} as any, + { + headers: {}, + query: { method, path }, + } as any, + kibanaResponseFactory ); - - teardowns.push(() => server.stop()); - - const params = []; - if (path != null) params.push(`path=${path}`); - if (method != null) params.push(`method=${method}`); - return await server.inject({ - method: 'POST', - url: `/api/console/proxy${params.length ? `?${params.join('&')}` : ''}`, - }); }; }); + const readStream = (s: Readable) => + new Promise(resolve => { + let v = ''; + s.on('data', data => { + v += data; + }); + s.on('end', () => resolve(v)); + }); + afterEach(async () => { - sandbox.restore(); - await Promise.all(teardowns.splice(0).map(fn => fn())); + jest.resetAllMocks(); }); describe('response body', () => { describe('GET request', () => { it('returns the exact body', async () => { const { payload } = await request('GET', '/', 'foobar'); - expect(payload).to.be('foobar'); + expect(await readStream(payload)).to.be('foobar'); }); }); describe('POST request', () => { it('returns the exact body', async () => { const { payload } = await request('POST', '/', 'foobar'); - expect(payload).to.be('foobar'); + expect(await readStream(payload)).to.be('foobar'); }); }); describe('PUT request', () => { it('returns the exact body', async () => { const { payload } = await request('PUT', '/', 'foobar'); - expect(payload).to.be('foobar'); + expect(await readStream(payload)).to.be('foobar'); }); }); describe('DELETE request', () => { it('returns the exact body', async () => { const { payload } = await request('DELETE', '/', 'foobar'); - expect(payload).to.be('foobar'); + expect(await readStream(payload)).to.be('foobar'); }); }); describe('HEAD request', () => { it('returns the status code and text', async () => { const { payload } = await request('HEAD', '/'); + expect(typeof payload).to.be('string'); expect(payload).to.be('200 - OK'); }); describe('mixed casing', () => { it('returns the status code and text', async () => { const { payload } = await request('HeAd', '/'); + expect(typeof payload).to.be('string'); expect(payload).to.be('200 - OK'); }); }); diff --git a/src/plugins/console/server/__tests__/proxy_route/headers.test.ts b/src/plugins/console/server/__tests__/proxy_route/headers.test.ts new file mode 100644 index 000000000000..8a779715ac82 --- /dev/null +++ b/src/plugins/console/server/__tests__/proxy_route/headers.test.ts @@ -0,0 +1,89 @@ +/* + * 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. + */ +jest.mock('../../../../../core/server/http/router/request', () => ({ + ensureRawRequest: jest.fn(), +})); + +import { kibanaResponseFactory } from '../../../../../core/server'; + +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { ensureRawRequest } from '../../../../../core/server/http/router/request'; + +import { getProxyRouteHandlerDeps } from './mocks'; + +import expect from '@kbn/expect'; +import * as requestModule from '../../lib/proxy_request'; + +import { createHandler } from '../../routes/api/console/proxy/create_handler'; + +import { createResponseStub } from './stubs'; + +describe('Console Proxy Route', () => { + let handler: ReturnType; + + beforeEach(() => { + (requestModule.proxyRequest as jest.Mock).mockResolvedValue(createResponseStub('')); + handler = createHandler(getProxyRouteHandlerDeps({})); + }); + + afterEach(async () => { + jest.resetAllMocks(); + }); + + describe('headers', () => { + it('forwards the remote header info', async () => { + (ensureRawRequest as jest.Mock).mockReturnValue({ + // This mocks the shape of the hapi request object, will probably change + info: { + remoteAddress: '0.0.0.0', + remotePort: '1234', + host: 'test', + }, + server: { + info: { + protocol: 'http', + }, + }, + }); + + await handler( + {} as any, + { + headers: {}, + query: { + method: 'POST', + path: '/api/console/proxy?method=GET&path=/', + }, + } as any, + kibanaResponseFactory + ); + + expect((requestModule.proxyRequest as jest.Mock).mock.calls.length).to.be(1); + const [[{ headers }]] = (requestModule.proxyRequest as jest.Mock).mock.calls; + expect(headers).to.have.property('x-forwarded-for'); + expect(headers['x-forwarded-for']).to.be('0.0.0.0'); + expect(headers).to.have.property('x-forwarded-port'); + expect(headers['x-forwarded-port']).to.be('1234'); + expect(headers).to.have.property('x-forwarded-proto'); + expect(headers['x-forwarded-proto']).to.be('http'); + expect(headers).to.have.property('x-forwarded-host'); + expect(headers['x-forwarded-host']).to.be('test'); + }); + }); +}); diff --git a/src/plugins/console/server/__tests__/proxy_route/mocks.ts b/src/plugins/console/server/__tests__/proxy_route/mocks.ts new file mode 100644 index 000000000000..74bd43fe5214 --- /dev/null +++ b/src/plugins/console/server/__tests__/proxy_route/mocks.ts @@ -0,0 +1,44 @@ +/* + * 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. + */ + +jest.mock('../../lib/proxy_request', () => ({ + proxyRequest: jest.fn(), +})); + +import { duration } from 'moment'; +import { ProxyConfigCollection } from '../../lib'; +import { CreateHandlerDependencies } from '../../routes/api/console/proxy/create_handler'; +import { coreMock } from '../../../../../core/server/mocks'; + +export const getProxyRouteHandlerDeps = ({ + proxyConfigCollection = new ProxyConfigCollection([]), + pathFilters = [/.*/], + readLegacyESConfig = () => ({ + requestTimeout: duration(30000), + customHeaders: {}, + requestHeadersWhitelist: [], + hosts: ['http://localhost:9200'], + }), + log = coreMock.createPluginInitializerContext().logger.get(), +}: Partial): CreateHandlerDependencies => ({ + proxyConfigCollection, + pathFilters, + readLegacyESConfig, + log, +}); diff --git a/src/plugins/console/server/__tests__/proxy_route/params.test.ts b/src/plugins/console/server/__tests__/proxy_route/params.test.ts new file mode 100644 index 000000000000..1ab9c3ae789c --- /dev/null +++ b/src/plugins/console/server/__tests__/proxy_route/params.test.ts @@ -0,0 +1,87 @@ +/* + * 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. + */ +import { kibanaResponseFactory } from '../../../../../core/server'; +import { getProxyRouteHandlerDeps } from './mocks'; +import { createResponseStub } from './stubs'; +import * as requestModule from '../../lib/proxy_request'; +import expect from '@kbn/expect'; + +import { createHandler } from '../../routes/api/console/proxy/create_handler'; + +describe('Console Proxy Route', () => { + let handler: ReturnType; + + afterEach(() => { + jest.resetAllMocks(); + }); + + describe('params', () => { + describe('pathFilters', () => { + describe('no matches', () => { + it('rejects with 403', async () => { + handler = createHandler( + getProxyRouteHandlerDeps({ pathFilters: [/^\/foo\//, /^\/bar\//] }) + ); + + const { status } = await handler( + {} as any, + { query: { method: 'POST', path: '/baz/id' } } as any, + kibanaResponseFactory + ); + + expect(status).to.be(403); + }); + }); + describe('one match', () => { + it('allows the request', async () => { + handler = createHandler( + getProxyRouteHandlerDeps({ pathFilters: [/^\/foo\//, /^\/bar\//] }) + ); + + (requestModule.proxyRequest as jest.Mock).mockResolvedValue(createResponseStub('foo')); + + const { status } = await handler( + {} as any, + { headers: {}, query: { method: 'POST', path: '/foo/id' } } as any, + kibanaResponseFactory + ); + + expect(status).to.be(200); + expect((requestModule.proxyRequest as jest.Mock).mock.calls.length).to.be(1); + }); + }); + describe('all match', () => { + it('allows the request', async () => { + handler = createHandler(getProxyRouteHandlerDeps({ pathFilters: [/^\/foo\//] })); + + (requestModule.proxyRequest as jest.Mock).mockResolvedValue(createResponseStub('foo')); + + const { status } = await handler( + {} as any, + { headers: {}, query: { method: 'GET', path: '/foo/id' } } as any, + kibanaResponseFactory + ); + + expect(status).to.be(200); + expect((requestModule.proxyRequest as jest.Mock).mock.calls.length).to.be(1); + }); + }); + }); + }); +}); diff --git a/src/plugins/console/server/__tests__/proxy_route/query_string.test.ts b/src/plugins/console/server/__tests__/proxy_route/query_string.test.ts new file mode 100644 index 000000000000..028022db1096 --- /dev/null +++ b/src/plugins/console/server/__tests__/proxy_route/query_string.test.ts @@ -0,0 +1,76 @@ +/* + * 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. + */ +import { kibanaResponseFactory } from '../../../../../core/server'; +import { getProxyRouteHandlerDeps } from './mocks'; +import { createResponseStub } from './stubs'; +import * as requestModule from '../../lib/proxy_request'; + +import expect from '@kbn/expect'; + +import { createHandler } from '../../routes/api/console/proxy/create_handler'; + +describe('Console Proxy Route', () => { + let request: any; + beforeEach(() => { + (requestModule.proxyRequest as jest.Mock).mockResolvedValue(createResponseStub('foo')); + + request = async (method: string, path: string) => { + const handler = createHandler(getProxyRouteHandlerDeps({})); + + return handler( + {} as any, + { headers: {}, query: { method, path } } as any, + kibanaResponseFactory + ); + }; + }); + + afterEach(async () => { + jest.resetAllMocks(); + }); + + describe('query string', () => { + describe('path', () => { + describe('contains full url', () => { + it('treats the url as a path', async () => { + await request('GET', 'http://evil.com/test'); + expect((requestModule.proxyRequest as jest.Mock).mock.calls.length).to.be(1); + const [[args]] = (requestModule.proxyRequest as jest.Mock).mock.calls; + expect(args.uri.href).to.be('http://localhost:9200/http://evil.com/test?pretty=true'); + }); + }); + describe('starts with a slash', () => { + it('combines well with the base url', async () => { + await request('GET', '/index/id'); + expect((requestModule.proxyRequest as jest.Mock).mock.calls.length).to.be(1); + const [[args]] = (requestModule.proxyRequest as jest.Mock).mock.calls; + expect(args.uri.href).to.be('http://localhost:9200/index/id?pretty=true'); + }); + }); + describe(`doesn't start with a slash`, () => { + it('combines well with the base url', async () => { + await request('GET', 'index/id'); + expect((requestModule.proxyRequest as jest.Mock).mock.calls.length).to.be(1); + const [[args]] = (requestModule.proxyRequest as jest.Mock).mock.calls; + expect(args.uri.href).to.be('http://localhost:9200/index/id?pretty=true'); + }); + }); + }); + }); +}); diff --git a/src/plugins/console/server/__tests__/proxy_route/route_validation.test.ts b/src/plugins/console/server/__tests__/proxy_route/route_validation.test.ts new file mode 100644 index 000000000000..403ef9737ae4 --- /dev/null +++ b/src/plugins/console/server/__tests__/proxy_route/route_validation.test.ts @@ -0,0 +1,52 @@ +/* + * 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. + */ + +import { routeValidationConfig } from '../../routes/api/console/proxy/validation_config'; + +const { query } = routeValidationConfig; + +describe('Proxy route validation', () => { + describe('query', () => { + describe('allows', () => { + it('known http verb method and path value', () => { + expect(query.validate({ method: 'GET', path: 'test' })); + }); + it('mixed case http verbs', () => { + expect(query.validate({ method: 'hEaD', path: 'test' })); + }); + }); + describe('throws for', () => { + it('empty query method value', () => { + expect(() => { + query.validate({ method: '', path: 'test' }); + }).toThrow('Method must be one of'); + }); + it('unknown method value', () => { + expect(() => { + query.validate({ method: 'abc', path: 'test' }); + }).toThrow('Method must be one of'); + }); + it('empty path value', () => { + expect(() => { + query.validate({ method: 'GET', path: '' }); + }).toThrow('Expected non-empty string'); + }); + }); + }); +}); diff --git a/src/legacy/core_plugins/console/server/__tests__/proxy_route/stubs.js b/src/plugins/console/server/__tests__/proxy_route/stubs.ts similarity index 65% rename from src/legacy/core_plugins/console/server/__tests__/proxy_route/stubs.js rename to src/plugins/console/server/__tests__/proxy_route/stubs.ts index 18ad277c0bf6..12ad9cbe26e9 100644 --- a/src/legacy/core_plugins/console/server/__tests__/proxy_route/stubs.js +++ b/src/plugins/console/server/__tests__/proxy_route/stubs.ts @@ -16,27 +16,25 @@ * specific language governing permissions and limitations * under the License. */ - +import { IncomingMessage } from 'http'; import { Readable } from 'stream'; -export function createResponseStub(response) { - return async () => { - const resp = new Readable({ - read() { - if (response) { - this.push(response); - } - this.push(null); - }, - }); +export function createResponseStub(response: any) { + const resp: any = new Readable({ + read() { + if (response) { + this.push(response); + } + this.push(null); + }, + }); - resp.statusCode = 200; - resp.statusMessage = 'OK'; - resp.headers = { - 'content-type': 'text/plain', - 'content-length': String(response ? response.length : 0), - }; - - return resp; + resp.statusCode = 200; + resp.statusMessage = 'OK'; + resp.headers = { + 'content-type': 'text/plain', + 'content-length': String(response ? response.length : 0), }; + + return resp as IncomingMessage; } diff --git a/src/legacy/core_plugins/console/server/__tests__/set_headers.js b/src/plugins/console/server/__tests__/set_headers.js similarity index 97% rename from src/legacy/core_plugins/console/server/__tests__/set_headers.js rename to src/plugins/console/server/__tests__/set_headers.js index 3cab23a05884..1f349cbbb571 100644 --- a/src/legacy/core_plugins/console/server/__tests__/set_headers.js +++ b/src/plugins/console/server/__tests__/set_headers.js @@ -18,7 +18,7 @@ */ import expect from '@kbn/expect'; -import { setHeaders } from '../set_headers'; +import { setHeaders } from '../lib'; describe('#set_headers', function() { it('throws if not given an object as the first argument', function() { diff --git a/src/legacy/core_plugins/console/server/__tests__/wildcard_matcher.js b/src/plugins/console/server/__tests__/wildcard_matcher.js similarity index 98% rename from src/legacy/core_plugins/console/server/__tests__/wildcard_matcher.js rename to src/plugins/console/server/__tests__/wildcard_matcher.js index 5969b94d7e67..18e43b221574 100644 --- a/src/legacy/core_plugins/console/server/__tests__/wildcard_matcher.js +++ b/src/plugins/console/server/__tests__/wildcard_matcher.js @@ -18,7 +18,7 @@ */ /* eslint-env mocha */ -import { WildcardMatcher } from '../wildcard_matcher'; +import { WildcardMatcher } from '../lib/wildcard_matcher'; function should(candidate, ...constructorArgs) { if (!new WildcardMatcher(...constructorArgs).match(candidate)) { diff --git a/src/plugins/console/server/config.ts b/src/plugins/console/server/config.ts new file mode 100644 index 000000000000..ebd4b37bb41b --- /dev/null +++ b/src/plugins/console/server/config.ts @@ -0,0 +1,55 @@ +/* + * 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. + */ + +import { schema, TypeOf } from '@kbn/config-schema'; + +export type ConfigType = TypeOf; + +export const config = schema.object( + { + enabled: schema.boolean({ defaultValue: true }), + proxyFilter: schema.arrayOf(schema.string(), { defaultValue: ['.*'] }), + ssl: schema.object({ verify: schema.boolean({ defaultValue: false }) }, {}), + + // This does not actually work, track this issue: https://github.com/elastic/kibana/issues/55576 + proxyConfig: schema.arrayOf( + schema.object({ + match: schema.object({ + protocol: schema.string({ defaultValue: '*' }), + host: schema.string({ defaultValue: '*' }), + port: schema.string({ defaultValue: '*' }), + path: schema.string({ defaultValue: '*' }), + }), + + timeout: schema.number(), + ssl: schema.object( + { + verify: schema.boolean(), + ca: schema.arrayOf(schema.string()), + cert: schema.string(), + key: schema.string(), + }, + { defaultValue: undefined } + ), + }), + { defaultValue: [] } + ), + }, + { defaultValue: undefined } +); diff --git a/src/plugins/console/server/index.ts b/src/plugins/console/server/index.ts new file mode 100644 index 000000000000..b603deee12e2 --- /dev/null +++ b/src/plugins/console/server/index.ts @@ -0,0 +1,31 @@ +/* + * 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. + */ +import { PluginConfigDescriptor, PluginInitializerContext } from 'kibana/server'; + +import { ConfigType, config as configSchema } from './config'; +import { ConsoleServerPlugin } from './plugin'; + +export { ConsoleSetup } from './types'; + +export const plugin = (ctx: PluginInitializerContext) => new ConsoleServerPlugin(ctx); + +export const config: PluginConfigDescriptor = { + deprecations: ({ unused }) => [unused('ssl')], + schema: configSchema, +}; diff --git a/src/legacy/core_plugins/console/server/elasticsearch_proxy_config.ts b/src/plugins/console/server/lib/elasticsearch_proxy_config.ts similarity index 94% rename from src/legacy/core_plugins/console/server/elasticsearch_proxy_config.ts rename to src/plugins/console/server/lib/elasticsearch_proxy_config.ts index 5f44a524e9cc..901d726ac51d 100644 --- a/src/legacy/core_plugins/console/server/elasticsearch_proxy_config.ts +++ b/src/plugins/console/server/lib/elasticsearch_proxy_config.ts @@ -21,6 +21,7 @@ import _ from 'lodash'; import http from 'http'; import https from 'https'; import url from 'url'; +import { Duration } from 'moment'; const createAgent = (legacyConfig: any) => { const target = url.parse(_.head(legacyConfig.hosts)); @@ -58,7 +59,7 @@ const createAgent = (legacyConfig: any) => { return new https.Agent(agentOptions); }; -export const getElasticsearchProxyConfig = (legacyConfig: any) => { +export const getElasticsearchProxyConfig = (legacyConfig: { requestTimeout: Duration }) => { return { timeout: legacyConfig.requestTimeout.asMilliseconds(), agent: createAgent(legacyConfig), diff --git a/src/legacy/core_plugins/console/server/index.js b/src/plugins/console/server/lib/index.ts similarity index 80% rename from src/legacy/core_plugins/console/server/index.js rename to src/plugins/console/server/lib/index.ts index 15a8a5baf79d..98004768f880 100644 --- a/src/legacy/core_plugins/console/server/index.js +++ b/src/plugins/console/server/lib/index.ts @@ -17,6 +17,9 @@ * under the License. */ +export { ProxyConfig } from './proxy_config'; export { ProxyConfigCollection } from './proxy_config_collection'; +export { proxyRequest } from './proxy_request'; export { getElasticsearchProxyConfig } from './elasticsearch_proxy_config'; -export { createProxyRoute } from './proxy_route'; +export { setHeaders } from './set_headers'; +export { addProcessorDefinition, addExtensionSpecFilePath } from './spec_definitions'; diff --git a/src/legacy/core_plugins/console/server/proxy_config.js b/src/plugins/console/server/lib/proxy_config.ts similarity index 80% rename from src/legacy/core_plugins/console/server/proxy_config.js rename to src/plugins/console/server/lib/proxy_config.ts index b8c1b11f9a0d..5adb9c58f784 100644 --- a/src/legacy/core_plugins/console/server/proxy_config.js +++ b/src/plugins/console/server/lib/proxy_config.ts @@ -19,12 +19,27 @@ import { values } from 'lodash'; import { format as formatUrl } from 'url'; -import { Agent as HttpsAgent } from 'https'; +import { Agent as HttpsAgent, AgentOptions } from 'https'; import { WildcardMatcher } from './wildcard_matcher'; export class ProxyConfig { - constructor(config) { + // @ts-ignore + private id: string; + private matchers: { + protocol: WildcardMatcher; + host: WildcardMatcher; + port: WildcardMatcher; + path: WildcardMatcher; + }; + + private readonly timeout: number; + + private readonly sslAgent?: HttpsAgent; + + private verifySsl: any; + + constructor(config: { match: any; timeout: number }) { config = { ...config, }; @@ -57,11 +72,11 @@ export class ProxyConfig { this.sslAgent = this._makeSslAgent(config); } - _makeSslAgent(config) { + _makeSslAgent(config: any) { const ssl = config.ssl || {}; this.verifySsl = ssl.verify; - const sslAgentOpts = { + const sslAgentOpts: AgentOptions = { ca: ssl.ca, cert: ssl.cert, key: ssl.key, @@ -73,7 +88,12 @@ export class ProxyConfig { } } - getForParsedUri({ protocol, hostname, port, pathname }) { + getForParsedUri({ + protocol, + hostname, + port, + pathname, + }: Record<'protocol' | 'hostname' | 'port' | 'pathname', string>) { let match = this.matchers.protocol.match(protocol.slice(0, -1)); match = match && this.matchers.host.match(hostname); match = match && this.matchers.port.match(port); diff --git a/src/legacy/core_plugins/console/server/proxy_config_collection.js b/src/plugins/console/server/lib/proxy_config_collection.ts similarity index 83% rename from src/legacy/core_plugins/console/server/proxy_config_collection.js rename to src/plugins/console/server/lib/proxy_config_collection.ts index 79bc057aaaf7..5d0b02fed5b1 100644 --- a/src/legacy/core_plugins/console/server/proxy_config_collection.js +++ b/src/plugins/console/server/lib/proxy_config_collection.ts @@ -18,18 +18,24 @@ */ import { defaultsDeep } from 'lodash'; - -import { ProxyConfig } from './proxy_config'; import { parse as parseUrl } from 'url'; +import { ProxyConfig } from './proxy_config'; + export class ProxyConfigCollection { - constructor(configs = []) { + private configs: ProxyConfig[]; + + constructor(configs: Array<{ match: any; timeout: number }> = []) { this.configs = configs.map(settings => new ProxyConfig(settings)); } - configForUri(uri) { + hasConfig() { + return Boolean(this.configs.length); + } + + configForUri(uri: string): object { const parsedUri = parseUrl(uri); - const settings = this.configs.map(config => config.getForParsedUri(parsedUri)); + const settings = this.configs.map(config => config.getForParsedUri(parsedUri as any)); return defaultsDeep({}, ...settings); } } diff --git a/src/legacy/core_plugins/console/server/request.test.ts b/src/plugins/console/server/lib/proxy_request.test.ts similarity index 96% rename from src/legacy/core_plugins/console/server/request.test.ts rename to src/plugins/console/server/lib/proxy_request.test.ts index 2cbde5b3b39b..0285daef7d72 100644 --- a/src/legacy/core_plugins/console/server/request.test.ts +++ b/src/plugins/console/server/lib/proxy_request.test.ts @@ -18,7 +18,7 @@ */ import http, { ClientRequest } from 'http'; import * as sinon from 'sinon'; -import { sendRequest } from './request'; +import { proxyRequest } from './proxy_request'; import { URL } from 'url'; import { fail } from 'assert'; @@ -46,7 +46,7 @@ describe(`Console's send request`, () => { it('correctly implements timeout and abort mechanism', async () => { try { - await sendRequest({ + await proxyRequest({ agent: null as any, headers: {}, method: 'get', diff --git a/src/legacy/core_plugins/console/server/request.ts b/src/plugins/console/server/lib/proxy_request.ts similarity index 99% rename from src/legacy/core_plugins/console/server/request.ts rename to src/plugins/console/server/lib/proxy_request.ts index 0f6b78b484ad..ed02b23d77f6 100644 --- a/src/legacy/core_plugins/console/server/request.ts +++ b/src/plugins/console/server/lib/proxy_request.ts @@ -37,7 +37,7 @@ interface Args { // We use a modified version of Hapi's Wreck because Hapi, Axios, and Superagent don't support GET requests // with bodies, but ES APIs do. Similarly with DELETE requests with bodies. Another library, `request` // diverged too much from current behaviour. -export const sendRequest = ({ +export const proxyRequest = ({ method, headers, agent, diff --git a/src/legacy/core_plugins/console/server/set_headers.js b/src/plugins/console/server/lib/set_headers.ts similarity index 94% rename from src/legacy/core_plugins/console/server/set_headers.js rename to src/plugins/console/server/lib/set_headers.ts index 5ea4c214dc42..ee0be40312a4 100644 --- a/src/legacy/core_plugins/console/server/set_headers.js +++ b/src/plugins/console/server/lib/set_headers.ts @@ -19,7 +19,7 @@ import { isPlainObject } from 'lodash'; -export function setHeaders(originalHeaders, newHeaders) { +export function setHeaders(originalHeaders: object, newHeaders: object) { if (!isPlainObject(originalHeaders)) { throw new Error( `Expected originalHeaders to be an object, but ${typeof originalHeaders} given` diff --git a/src/legacy/core_plugins/console/server/api_server/api.js b/src/plugins/console/server/lib/spec_definitions/api.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/api.js rename to src/plugins/console/server/lib/spec_definitions/api.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0.js b/src/plugins/console/server/lib/spec_definitions/es_6_0.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/aggregations.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/aggregations.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/aggregations.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/aggregations.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/aliases.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/aliases.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/aliases.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/aliases.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/document.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/document.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/document.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/document.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/filter.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/filter.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/filter.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/filter.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/globals.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/globals.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/globals.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/globals.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/ingest.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/ingest.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/ingest.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/ingest.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/mappings.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/mappings.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/mappings.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/mappings.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/query/dsl.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/query/dsl.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/query/dsl.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/query/dsl.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/query/index.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/query/index.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/query/index.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/query/index.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/query/templates.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/query/templates.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/query/templates.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/query/templates.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/reindex.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/reindex.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/reindex.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/reindex.js diff --git a/src/legacy/core_plugins/console/server/api_server/es_6_0/search.js b/src/plugins/console/server/lib/spec_definitions/es_6_0/search.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/es_6_0/search.js rename to src/plugins/console/server/lib/spec_definitions/es_6_0/search.js diff --git a/src/plugins/console/server/lib/spec_definitions/index.d.ts b/src/plugins/console/server/lib/spec_definitions/index.d.ts new file mode 100644 index 000000000000..0a79d3fb386f --- /dev/null +++ b/src/plugins/console/server/lib/spec_definitions/index.d.ts @@ -0,0 +1,24 @@ +/* + * 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 declare function addProcessorDefinition(...args: any[]): any; + +export declare function resolveApi(senseVersion: string, apis: string[]): object; + +export declare function addExtensionSpecFilePath(...args: any[]): any; diff --git a/src/plugins/console/server/lib/spec_definitions/index.js b/src/plugins/console/server/lib/spec_definitions/index.js new file mode 100644 index 000000000000..3fe1913d5a19 --- /dev/null +++ b/src/plugins/console/server/lib/spec_definitions/index.js @@ -0,0 +1,24 @@ +/* + * 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 { addProcessorDefinition } from './es_6_0/ingest'; + +export { addExtensionSpecFilePath } from './spec'; + +export { resolveApi } from './server'; diff --git a/src/legacy/core_plugins/console/server/api_server/server.js b/src/plugins/console/server/lib/spec_definitions/server.js similarity index 91% rename from src/legacy/core_plugins/console/server/api_server/server.js rename to src/plugins/console/server/lib/spec_definitions/server.js index 48ed73cb3611..dd700bf01950 100644 --- a/src/legacy/core_plugins/console/server/api_server/server.js +++ b/src/plugins/console/server/lib/spec_definitions/server.js @@ -21,7 +21,7 @@ import _ from 'lodash'; const KNOWN_APIS = ['es_6_0']; -export function resolveApi(senseVersion, apis, h) { +export function resolveApi(senseVersion, apis) { const result = {}; _.each(apis, function(name) { { @@ -33,5 +33,5 @@ export function resolveApi(senseVersion, apis, h) { } }); - return h.response(result).type('application/json'); + return result; } diff --git a/src/legacy/core_plugins/console/server/api_server/server.test.js b/src/plugins/console/server/lib/spec_definitions/server.test.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/server.test.js rename to src/plugins/console/server/lib/spec_definitions/server.test.js diff --git a/src/legacy/core_plugins/console/server/api_server/spec/.eslintrc b/src/plugins/console/server/lib/spec_definitions/spec/.eslintrc similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/.eslintrc rename to src/plugins/console/server/lib/spec_definitions/spec/.eslintrc diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/_common.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/_common.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/_common.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/_common.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/bulk.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/bulk.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/bulk.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/bulk.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.aliases.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.aliases.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.aliases.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.aliases.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.allocation.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.allocation.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.allocation.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.allocation.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.count.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.count.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.count.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.count.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.fielddata.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.fielddata.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.fielddata.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.fielddata.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.health.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.health.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.health.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.health.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.help.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.help.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.help.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.help.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.indices.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.indices.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.indices.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.indices.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.master.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.master.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.master.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.master.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.nodeattrs.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.nodeattrs.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.nodeattrs.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.nodeattrs.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.nodes.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.nodes.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.nodes.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.nodes.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.pending_tasks.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.pending_tasks.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.pending_tasks.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.pending_tasks.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.plugins.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.plugins.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.plugins.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.plugins.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.recovery.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.recovery.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.recovery.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.recovery.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.repositories.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.repositories.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.repositories.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.repositories.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.segments.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.segments.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.segments.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.segments.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.shards.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.shards.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.shards.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.shards.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.snapshots.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.snapshots.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.snapshots.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.snapshots.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.tasks.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.tasks.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.tasks.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.tasks.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.templates.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.templates.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.templates.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.templates.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cat.thread_pool.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cat.thread_pool.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cat.thread_pool.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cat.thread_pool.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/clear_scroll.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/clear_scroll.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/clear_scroll.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/clear_scroll.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.allocation_explain.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.allocation_explain.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.allocation_explain.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.allocation_explain.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.get_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.get_settings.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.get_settings.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.get_settings.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.health.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.health.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.health.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.health.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.pending_tasks.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.pending_tasks.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.pending_tasks.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.pending_tasks.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.put_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.put_settings.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.put_settings.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.put_settings.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.remote_info.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.remote_info.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.remote_info.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.remote_info.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.reroute.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.reroute.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.reroute.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.reroute.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.state.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.state.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.state.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.state.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.stats.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.stats.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/cluster.stats.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/cluster.stats.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/count.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/count.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/count.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/count.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/create.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/create.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/create.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/create.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/delete.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/delete.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/delete.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/delete.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/delete_by_query.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/delete_by_query.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/delete_by_query.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/delete_by_query.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/delete_by_query_rethrottle.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/delete_by_query_rethrottle.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/delete_by_query_rethrottle.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/delete_by_query_rethrottle.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/delete_script.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/delete_script.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/delete_script.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/delete_script.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/exists.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/exists.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/exists.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/exists.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/exists_source.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/exists_source.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/exists_source.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/exists_source.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/explain.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/explain.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/explain.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/explain.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/field_caps.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/field_caps.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/field_caps.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/field_caps.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/get.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/get.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/get.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/get.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/get_script.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/get_script.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/get_script.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/get_script.json diff --git a/src/plugins/console/server/lib/spec_definitions/spec/generated/get_script_context.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/get_script_context.json new file mode 100644 index 000000000000..528c261df770 --- /dev/null +++ b/src/plugins/console/server/lib/spec_definitions/spec/generated/get_script_context.json @@ -0,0 +1,10 @@ +{ + "get_script_context": { + "methods": [ + "GET" + ], + "patterns": [ + "_script_context" + ] + } +} diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/get_script_languages.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/get_script_languages.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/get_script_languages.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/get_script_languages.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/get_source.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/get_source.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/get_source.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/get_source.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/index.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/index.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/index.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/index.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.analyze.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.analyze.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.analyze.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.analyze.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.clear_cache.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.clear_cache.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.clear_cache.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.clear_cache.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.clone.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.clone.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.clone.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.clone.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.close.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.close.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.close.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.close.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.create.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.create.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.create.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.create.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.delete.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.delete.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.delete.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.delete.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.delete_alias.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.delete_alias.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.delete_alias.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.delete_alias.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.delete_template.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.delete_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.delete_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.delete_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists_alias.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists_alias.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists_alias.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists_alias.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists_template.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists_type.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists_type.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.exists_type.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.exists_type.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.flush.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.flush.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.flush.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.flush.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.flush_synced.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.flush_synced.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.flush_synced.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.flush_synced.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.forcemerge.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.forcemerge.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.forcemerge.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.forcemerge.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_alias.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_alias.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_alias.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_alias.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_field_mapping.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_field_mapping.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_field_mapping.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_field_mapping.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_mapping.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_mapping.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_mapping.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_mapping.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_settings.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_settings.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_settings.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_template.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_upgrade.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_upgrade.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.get_upgrade.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.get_upgrade.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.open.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.open.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.open.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.open.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_alias.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_alias.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_alias.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_alias.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_mapping.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_mapping.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_mapping.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_mapping.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_settings.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_settings.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_settings.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_template.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.put_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.put_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.recovery.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.recovery.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.recovery.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.recovery.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.refresh.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.refresh.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.refresh.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.refresh.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.rollover.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.rollover.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.rollover.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.rollover.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.segments.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.segments.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.segments.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.segments.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.shard_stores.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.shard_stores.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.shard_stores.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.shard_stores.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.shrink.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.shrink.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.shrink.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.shrink.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.split.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.split.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.split.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.split.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.stats.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.stats.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.stats.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.stats.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.update_aliases.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.update_aliases.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.update_aliases.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.update_aliases.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.upgrade.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.upgrade.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.upgrade.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.upgrade.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/indices.validate_query.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/indices.validate_query.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/indices.validate_query.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/indices.validate_query.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/info.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/info.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/info.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/info.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.delete_pipeline.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.delete_pipeline.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.delete_pipeline.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.delete_pipeline.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.get_pipeline.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.get_pipeline.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.get_pipeline.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.get_pipeline.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.processor_grok.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.processor_grok.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.processor_grok.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.processor_grok.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.put_pipeline.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.put_pipeline.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.put_pipeline.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.put_pipeline.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.simulate.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.simulate.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/ingest.simulate.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/ingest.simulate.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/mget.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/mget.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/mget.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/mget.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/msearch.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/msearch.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/msearch.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/msearch.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/msearch_template.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/msearch_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/msearch_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/msearch_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/mtermvectors.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/mtermvectors.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/mtermvectors.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/mtermvectors.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.hot_threads.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.hot_threads.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.hot_threads.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.hot_threads.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.info.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.info.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.info.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.info.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.reload_secure_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.reload_secure_settings.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.reload_secure_settings.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.reload_secure_settings.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.stats.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.stats.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.stats.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.stats.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.usage.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.usage.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/nodes.usage.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/nodes.usage.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/ping.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/ping.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/ping.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/ping.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/put_script.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/put_script.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/put_script.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/put_script.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/rank_eval.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/rank_eval.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/rank_eval.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/rank_eval.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/reindex.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/reindex.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/reindex.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/reindex.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/reindex_rethrottle.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/reindex_rethrottle.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/reindex_rethrottle.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/reindex_rethrottle.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/render_search_template.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/render_search_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/render_search_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/render_search_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/scripts_painless_execute.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/scripts_painless_execute.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/scripts_painless_execute.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/scripts_painless_execute.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/scroll.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/scroll.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/scroll.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/scroll.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/search.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/search.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/search.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/search.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/search_shards.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/search_shards.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/search_shards.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/search_shards.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/search_template.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/search_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/search_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/search_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.cleanup_repository.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.cleanup_repository.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.cleanup_repository.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.cleanup_repository.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.create.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.create.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.create.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.create.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.create_repository.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.create_repository.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.create_repository.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.create_repository.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.delete.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.delete.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.delete.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.delete.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.delete_repository.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.delete_repository.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.delete_repository.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.delete_repository.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.get.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.get.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.get.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.get.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.get_repository.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.get_repository.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.get_repository.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.get_repository.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.restore.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.restore.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.restore.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.restore.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.status.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.status.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.status.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.status.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.verify_repository.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.verify_repository.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/snapshot.verify_repository.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/snapshot.verify_repository.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/tasks.cancel.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/tasks.cancel.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/tasks.cancel.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/tasks.cancel.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/tasks.get.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/tasks.get.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/tasks.get.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/tasks.get.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/tasks.list.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/tasks.list.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/tasks.list.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/tasks.list.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/termvectors.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/termvectors.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/termvectors.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/termvectors.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/update.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/update.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/update.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/update.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/update_by_query.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/update_by_query.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/update_by_query.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/update_by_query.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/generated/update_by_query_rethrottle.json b/src/plugins/console/server/lib/spec_definitions/spec/generated/update_by_query_rethrottle.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/generated/update_by_query_rethrottle.json rename to src/plugins/console/server/lib/spec_definitions/spec/generated/update_by_query_rethrottle.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/index.js b/src/plugins/console/server/lib/spec_definitions/spec/index.js similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/index.js rename to src/plugins/console/server/lib/spec_definitions/spec/index.js diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/clear_scroll.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/clear_scroll.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/clear_scroll.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/clear_scroll.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/cluster.health.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/cluster.health.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/cluster.health.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/cluster.health.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/cluster.put_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/cluster.put_settings.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/cluster.put_settings.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/cluster.put_settings.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/cluster.reroute.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/cluster.reroute.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/cluster.reroute.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/cluster.reroute.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/count.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/count.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/count.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/count.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.analyze.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.analyze.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.analyze.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.analyze.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.clone.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.clone.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.clone.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.clone.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.create.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.create.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.create.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.create.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.delete_template.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.delete_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.delete_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.delete_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.exists_template.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.exists_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.exists_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.exists_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.get_field_mapping.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.get_field_mapping.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.get_field_mapping.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.get_field_mapping.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.get_mapping.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.get_mapping.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.get_mapping.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.get_mapping.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.get_template.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.get_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.get_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.get_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.put_alias.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_alias.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.put_alias.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_alias.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.put_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_settings.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.put_settings.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_settings.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.put_template.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_template.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.put_template.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_template.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.rollover.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.rollover.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.rollover.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.rollover.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.update_aliases.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.update_aliases.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.update_aliases.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.update_aliases.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.validate_query.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.validate_query.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/indices.validate_query.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.validate_query.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/snapshot.create.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/snapshot.create.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/snapshot.create.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/snapshot.create.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/snapshot.create_repository.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/snapshot.create_repository.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/snapshot.create_repository.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/snapshot.create_repository.json diff --git a/src/legacy/core_plugins/console/server/api_server/spec/overrides/snapshot.restore.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/snapshot.restore.json similarity index 100% rename from src/legacy/core_plugins/console/server/api_server/spec/overrides/snapshot.restore.json rename to src/plugins/console/server/lib/spec_definitions/spec/overrides/snapshot.restore.json diff --git a/src/legacy/core_plugins/console/server/wildcard_matcher.js b/src/plugins/console/server/lib/wildcard_matcher.ts similarity index 81% rename from src/legacy/core_plugins/console/server/wildcard_matcher.js rename to src/plugins/console/server/lib/wildcard_matcher.ts index b99fba9295e5..128ad19172c7 100644 --- a/src/legacy/core_plugins/console/server/wildcard_matcher.js +++ b/src/plugins/console/server/lib/wildcard_matcher.ts @@ -17,12 +17,14 @@ * under the License. */ -import { Minimatch } from 'minimatch'; +import { Minimatch, IMinimatch } from 'minimatch'; export class WildcardMatcher { - constructor(wildcardPattern, emptyVal) { - this.emptyVal = emptyVal; - this.pattern = String(wildcardPattern || '*'); + pattern: string; + matcher: IMinimatch; + + constructor(private readonly wildcardPattern: string, private readonly emptyVal?: string) { + this.pattern = String(this.wildcardPattern || '*'); this.matcher = new Minimatch(this.pattern, { noglobstar: true, dot: true, @@ -32,7 +34,7 @@ export class WildcardMatcher { }); } - match(candidate) { + match(candidate: string) { const empty = !candidate || candidate === this.emptyVal; if (empty && this.pattern === '*') { return true; diff --git a/src/plugins/console/server/plugin.ts b/src/plugins/console/server/plugin.ts new file mode 100644 index 000000000000..c8ef84aee3b6 --- /dev/null +++ b/src/plugins/console/server/plugin.ts @@ -0,0 +1,81 @@ +/* + * 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. + */ +import { first } from 'rxjs/operators'; +import { CoreSetup, Logger, Plugin, PluginInitializerContext } from 'kibana/server'; + +import { readLegacyEsConfig } from '../../../legacy/core_plugins/console_legacy'; + +import { ProxyConfigCollection, addExtensionSpecFilePath, addProcessorDefinition } from './lib'; +import { ConfigType } from './config'; +import { registerProxyRoute } from './routes/api/console/proxy'; +import { registerSpecDefinitionsRoute } from './routes/api/console/spec_definitions'; +import { ESConfigForProxy, ConsoleSetup } from './types'; + +export class ConsoleServerPlugin implements Plugin { + log: Logger; + + constructor(private readonly ctx: PluginInitializerContext) { + this.log = this.ctx.logger.get(); + } + + async setup({ http, capabilities, getStartServices }: CoreSetup) { + capabilities.registerProvider(() => ({ + dev_tools: { + show: true, + save: true, + }, + })); + + const config = await this.ctx.config + .create() + .pipe(first()) + .toPromise(); + + const { elasticsearch } = await this.ctx.config.legacy.globalConfig$.pipe(first()).toPromise(); + + const proxyPathFilters = config.proxyFilter.map((str: string) => new RegExp(str)); + + const router = http.createRouter(); + + registerProxyRoute({ + log: this.log, + proxyConfigCollection: new ProxyConfigCollection(config.proxyConfig), + readLegacyESConfig: (): ESConfigForProxy => { + const legacyConfig = readLegacyEsConfig(); + return { + ...elasticsearch, + hosts: legacyConfig.hosts, + requestHeadersWhitelist: legacyConfig.requestHeadersWhitelist, + customHeaders: legacyConfig.customHeaders, + }; + }, + pathFilters: proxyPathFilters, + router, + }); + + registerSpecDefinitionsRoute({ router }); + + return { + addExtensionSpecFilePath, + addProcessorDefinition, + }; + } + + start() {} +} diff --git a/src/plugins/console/server/routes/api/console/proxy/create_handler.ts b/src/plugins/console/server/routes/api/console/proxy/create_handler.ts new file mode 100644 index 000000000000..50a9fcf03c20 --- /dev/null +++ b/src/plugins/console/server/routes/api/console/proxy/create_handler.ts @@ -0,0 +1,217 @@ +/* + * 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. + */ + +import { Agent, IncomingMessage } from 'http'; +import * as url from 'url'; +import { pick, trimLeft, trimRight } from 'lodash'; + +import { KibanaRequest, Logger, RequestHandler } from 'kibana/server'; + +import { ESConfigForProxy } from '../../../../types'; +import { + getElasticsearchProxyConfig, + ProxyConfigCollection, + proxyRequest, + setHeaders, +} from '../../../../lib'; + +import { Body, Query } from './validation_config'; + +// TODO: find a better way to get information from the request like remoteAddress and remotePort +// for forwarding. +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { ensureRawRequest } from '../../../../../../../core/server/http/router'; + +export interface CreateHandlerDependencies { + log: Logger; + readLegacyESConfig: () => ESConfigForProxy; + pathFilters: RegExp[]; + proxyConfigCollection: ProxyConfigCollection; +} + +function toURL(base: string, path: string) { + const urlResult = new url.URL(`${trimRight(base, '/')}/${trimLeft(path, '/')}`); + // Appending pretty here to have Elasticsearch do the JSON formatting, as doing + // in JS can lead to data loss (7.0 will get munged into 7, thus losing indication of + // measurement precision) + if (!urlResult.searchParams.get('pretty')) { + urlResult.searchParams.append('pretty', 'true'); + } + return urlResult; +} + +function filterHeaders(originalHeaders: object, headersToKeep: string[]): object { + const normalizeHeader = function(header: any) { + if (!header) { + return ''; + } + header = header.toString(); + return header.trim().toLowerCase(); + }; + + // Normalize list of headers we want to allow in upstream request + const headersToKeepNormalized = headersToKeep.map(normalizeHeader); + + return pick(originalHeaders, headersToKeepNormalized); +} + +function getRequestConfig( + headers: object, + esConfig: ESConfigForProxy, + proxyConfigCollection: ProxyConfigCollection, + uri: string +): { agent: Agent; timeout: number; headers: object; rejectUnauthorized?: boolean } { + const filteredHeaders = filterHeaders(headers, esConfig.requestHeadersWhitelist); + const newHeaders = setHeaders(filteredHeaders, esConfig.customHeaders); + + if (proxyConfigCollection.hasConfig()) { + return { + ...proxyConfigCollection.configForUri(uri), + headers: newHeaders, + } as any; + } + + return { + ...getElasticsearchProxyConfig(esConfig), + headers: newHeaders, + }; +} + +function getProxyHeaders(req: KibanaRequest) { + const headers = Object.create(null); + + // Scope this proto-unsafe functionality to where it is being used. + function extendCommaList(obj: Record, property: string, value: any) { + obj[property] = (obj[property] ? obj[property] + ',' : '') + value; + } + + const _req = ensureRawRequest(req); + + if (_req?.info?.remotePort && _req?.info?.remoteAddress) { + // see https://git.io/vytQ7 + extendCommaList(headers, 'x-forwarded-for', _req.info.remoteAddress); + extendCommaList(headers, 'x-forwarded-port', _req.info.remotePort); + extendCommaList(headers, 'x-forwarded-proto', _req.server.info.protocol); + extendCommaList(headers, 'x-forwarded-host', _req.info.host); + } + + const contentType = req.headers['content-type']; + if (contentType) { + headers['content-type'] = contentType; + } + return headers; +} + +export const createHandler = ({ + log, + readLegacyESConfig, + pathFilters, + proxyConfigCollection, +}: CreateHandlerDependencies): RequestHandler => async ( + ctx, + request, + response +) => { + const { body, query } = request; + const { path, method } = query; + + if (!pathFilters.some(re => re.test(path))) { + return response.forbidden({ + body: `Error connecting to '${path}':\n\nUnable to send requests to that path.`, + headers: { + 'Content-Type': 'text/plain', + }, + }); + } + + const legacyConfig = readLegacyESConfig(); + const { hosts } = legacyConfig; + let esIncomingMessage: IncomingMessage; + + for (let idx = 0; idx < hosts.length; ++idx) { + const host = hosts[idx]; + try { + const uri = toURL(host, path); + + // Because this can technically be provided by a settings-defined proxy config, we need to + // preserve these property names to maintain BWC. + const { timeout, agent, headers, rejectUnauthorized } = getRequestConfig( + request.headers, + legacyConfig, + proxyConfigCollection, + uri.toString() + ); + + const requestHeaders = { + ...headers, + ...getProxyHeaders(request), + }; + + esIncomingMessage = await proxyRequest({ + method: method.toLowerCase() as any, + headers: requestHeaders, + uri, + timeout, + payload: body, + rejectUnauthorized, + agent, + }); + + break; + } catch (e) { + log.error(e); + if (e.code !== 'ECONNREFUSED') { + return response.internalError(e); + } + if (idx === hosts.length - 1) { + log.warn(`Could not connect to any configured ES node [${hosts.join(', ')}]`); + return response.customError({ + statusCode: 502, + body: e, + }); + } + // Otherwise, try the next host... + } + } + + const { + statusCode, + statusMessage, + headers: { warning }, + } = esIncomingMessage!; + + if (method.toUpperCase() !== 'HEAD') { + return response.custom({ + statusCode: statusCode!, + body: esIncomingMessage!, + headers: { + warning: warning || '', + }, + }); + } + + return response.custom({ + statusCode: statusCode!, + body: `${statusCode} - ${statusMessage}`, + headers: { + warning: warning || '', + 'Content-Type': 'text/plain', + }, + }); +}; diff --git a/src/plugins/console/server/routes/api/console/proxy/index.ts b/src/plugins/console/server/routes/api/console/proxy/index.ts new file mode 100644 index 000000000000..5f7df1d7cf66 --- /dev/null +++ b/src/plugins/console/server/routes/api/console/proxy/index.ts @@ -0,0 +1,44 @@ +/* + * 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. + */ + +import { IRouter } from 'kibana/server'; +import { routeValidationConfig } from './validation_config'; +import { createHandler, CreateHandlerDependencies } from './create_handler'; + +export const registerProxyRoute = ( + deps: { + router: IRouter; + } & CreateHandlerDependencies +) => { + const { router, ...handlerDeps } = deps; + router.post( + { + path: '/api/console/proxy', + options: { + tags: ['access:console'], + body: { + output: 'stream', + parse: false, + }, + }, + validate: routeValidationConfig, + }, + createHandler(handlerDeps) + ); +}; diff --git a/src/plugins/console/server/routes/api/console/proxy/validation_config.ts b/src/plugins/console/server/routes/api/console/proxy/validation_config.ts new file mode 100644 index 000000000000..f2372e9ee80d --- /dev/null +++ b/src/plugins/console/server/routes/api/console/proxy/validation_config.ts @@ -0,0 +1,44 @@ +/* + * 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. + */ +import { schema, TypeOf } from '@kbn/config-schema'; + +export type Query = TypeOf; +export type Body = TypeOf; + +const acceptedHttpVerb = schema.string({ + validate: method => { + return ['HEAD', 'GET', 'POST', 'PUT', 'DELETE'].some( + verb => verb.toLowerCase() === method.toLowerCase() + ) + ? undefined + : `Method must be one of, case insensitive ['HEAD', 'GET', 'POST', 'PUT', 'DELETE']. Received '${method}'.`; + }, +}); + +const nonEmptyString = schema.string({ + validate: s => (s === '' ? 'Expected non-empty string' : undefined), +}); + +export const routeValidationConfig = { + query: schema.object({ + method: acceptedHttpVerb, + path: nonEmptyString, + }), + body: schema.stream(), +}; diff --git a/src/plugins/console/server/routes/api/console/spec_definitions/index.ts b/src/plugins/console/server/routes/api/console/spec_definitions/index.ts new file mode 100644 index 000000000000..e2ece37f407a --- /dev/null +++ b/src/plugins/console/server/routes/api/console/spec_definitions/index.ts @@ -0,0 +1,48 @@ +/* + * 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. + */ +import { schema, TypeOf } from '@kbn/config-schema'; +import { IRouter, RequestHandler } from 'kibana/server'; +import { resolveApi } from '../../../../lib/spec_definitions'; + +export const registerSpecDefinitionsRoute = ({ router }: { router: IRouter }) => { + const handler: RequestHandler> = async ( + ctx, + request, + response + ) => { + const { sense_version: version, apis } = request.query; + + return response.ok({ + body: resolveApi(version, apis.split(',')), + headers: { + 'Content-Type': 'application/json', + }, + }); + }; + + const validate = { + query: schema.object({ + sense_version: schema.string({ defaultValue: '' }), + apis: schema.string(), + }), + }; + + router.get({ path: '/api/console/api_server', validate }, handler); + router.post({ path: '/api/console/api_server', validate }, handler); +}; diff --git a/src/plugins/console/server/types.ts b/src/plugins/console/server/types.ts new file mode 100644 index 000000000000..60ce56ad39fc --- /dev/null +++ b/src/plugins/console/server/types.ts @@ -0,0 +1,34 @@ +/* + * 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. + */ + +import { Duration } from 'moment'; +import { ConsoleServerPlugin } from './plugin'; + +/** @public */ +export type ConsoleSetup = ReturnType extends Promise + ? U + : ReturnType; + +/** @internal */ +export interface ESConfigForProxy { + hosts: string[]; + requestHeadersWhitelist: string[]; + customHeaders: Record; + requestTimeout: Duration; +} diff --git a/x-pack/index.js b/x-pack/index.js index 83a7b5540334..9ab6e2ee322d 100644 --- a/x-pack/index.js +++ b/x-pack/index.js @@ -22,7 +22,6 @@ import { maps } from './legacy/plugins/maps'; import { licenseManagement } from './legacy/plugins/license_management'; import { indexManagement } from './legacy/plugins/index_management'; import { indexLifecycleManagement } from './legacy/plugins/index_lifecycle_management'; -import { consoleExtensions } from './legacy/plugins/console_extensions'; import { spaces } from './legacy/plugins/spaces'; import { kueryAutocompleteInitializer } from './legacy/plugins/kuery_autocomplete'; import { canvas } from './legacy/plugins/canvas'; @@ -65,7 +64,6 @@ module.exports = function(kibana) { canvas(kibana), licenseManagement(kibana), indexManagement(kibana), - consoleExtensions(kibana), indexLifecycleManagement(kibana), kueryAutocompleteInitializer(kibana), infra(kibana), diff --git a/x-pack/legacy/plugins/console_extensions/index.js b/x-pack/legacy/plugins/console_extensions/index.js deleted file mode 100644 index fd1b48f0fd6b..000000000000 --- a/x-pack/legacy/plugins/console_extensions/index.js +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { join } from 'path'; -import { processors } from './spec/ingest'; - -export function consoleExtensions(kibana) { - return new kibana.Plugin({ - id: 'console_extensions', - require: ['kibana', 'console'], - isEnabled(config) { - return ( - config.get('console_extensions.enabled') && - config.has('console.enabled') && - config.get('console.enabled') - ); - }, - - config(Joi) { - return Joi.object({ - enabled: Joi.boolean().default(true), - }).default(); - }, - - init: server => { - if ( - server.plugins.console && - server.plugins.console.addExtensionSpecFilePath && - server.plugins.console.addProcessorDefinition - ) { - const { addExtensionSpecFilePath, addProcessorDefinition } = server.plugins.console; - - addExtensionSpecFilePath(join(__dirname, 'spec/')); - - processors.forEach(processor => addProcessorDefinition(processor)); - } else { - console.warn( - 'Missing server.plugins.console.addExtensionSpecFilePath extension point.', - 'Cannot add xpack APIs to autocomplete.' - ); - } - }, - }); -} diff --git a/x-pack/plugins/console_extensions/kibana.json b/x-pack/plugins/console_extensions/kibana.json new file mode 100644 index 000000000000..9411523d3f6d --- /dev/null +++ b/x-pack/plugins/console_extensions/kibana.json @@ -0,0 +1,8 @@ +{ + "id": "consoleExtensions", + "version": "1.0.0", + "kibanaVersion": "kibana", + "requiredPlugins": ["console"], + "server": true, + "ui": false +} diff --git a/x-pack/plugins/console_extensions/server/config.ts b/x-pack/plugins/console_extensions/server/config.ts new file mode 100644 index 000000000000..c429e0fce13f --- /dev/null +++ b/x-pack/plugins/console_extensions/server/config.ts @@ -0,0 +1,12 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { schema, TypeOf } from '@kbn/config-schema'; + +export type ConfigType = TypeOf; + +export const config = schema.object({ + enabled: schema.boolean({ defaultValue: true }), +}); diff --git a/x-pack/plugins/console_extensions/server/index.ts b/x-pack/plugins/console_extensions/server/index.ts new file mode 100644 index 000000000000..7fc16d4507da --- /dev/null +++ b/x-pack/plugins/console_extensions/server/index.ts @@ -0,0 +1,15 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { PluginInitializerContext, PluginConfigDescriptor } from 'kibana/server'; + +import { config as configSchema, ConfigType } from './config'; +import { ConsoleExtensionsServerPlugin } from './plugin'; + +export const plugin = (ctx: PluginInitializerContext) => new ConsoleExtensionsServerPlugin(ctx); + +export const config: PluginConfigDescriptor = { + schema: configSchema, +}; diff --git a/x-pack/plugins/console_extensions/server/plugin.ts b/x-pack/plugins/console_extensions/server/plugin.ts new file mode 100644 index 000000000000..f4c41aa0a0ad --- /dev/null +++ b/x-pack/plugins/console_extensions/server/plugin.ts @@ -0,0 +1,32 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { join } from 'path'; +import { CoreSetup, Logger, Plugin, PluginInitializerContext } from 'kibana/server'; + +import { ConsoleSetup } from '../../../../src/plugins/console/server'; + +import { processors } from './spec/ingest/index'; + +interface SetupDependencies { + console: ConsoleSetup; +} + +export class ConsoleExtensionsServerPlugin implements Plugin { + log: Logger; + constructor(private readonly ctx: PluginInitializerContext) { + this.log = this.ctx.logger.get(); + } + + setup( + core: CoreSetup, + { console: { addProcessorDefinition, addExtensionSpecFilePath } }: SetupDependencies + ) { + addExtensionSpecFilePath(join(__dirname, 'spec/')); + processors.forEach(processor => addProcessorDefinition(processor)); + this.log.debug('Installed console autocomplete extensions.'); + } + start() {} +} diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.delete_auto_follow_pattern.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.delete_auto_follow_pattern.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.delete_auto_follow_pattern.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.delete_auto_follow_pattern.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.follow.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.follow.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.follow.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.follow.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.follow_info.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.follow_info.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.follow_info.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.follow_info.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.follow_stats.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.follow_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.follow_stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.follow_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.forget_follower.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.forget_follower.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.forget_follower.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.forget_follower.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.get_auto_follow_pattern.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.get_auto_follow_pattern.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.get_auto_follow_pattern.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.get_auto_follow_pattern.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.pause_auto_follow_pattern.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.pause_auto_follow_pattern.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.pause_auto_follow_pattern.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.pause_auto_follow_pattern.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.pause_follow.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.pause_follow.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.pause_follow.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.pause_follow.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.put_auto_follow_pattern.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.put_auto_follow_pattern.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.put_auto_follow_pattern.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.put_auto_follow_pattern.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.resume_auto_follow_pattern.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.resume_auto_follow_pattern.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.resume_auto_follow_pattern.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.resume_auto_follow_pattern.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.resume_follow.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.resume_follow.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.resume_follow.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.resume_follow.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.stats.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ccr.unfollow.json b/x-pack/plugins/console_extensions/server/spec/generated/ccr.unfollow.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ccr.unfollow.json rename to x-pack/plugins/console_extensions/server/spec/generated/ccr.unfollow.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/enrich.delete_policy.json b/x-pack/plugins/console_extensions/server/spec/generated/enrich.delete_policy.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/enrich.delete_policy.json rename to x-pack/plugins/console_extensions/server/spec/generated/enrich.delete_policy.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/enrich.execute_policy.json b/x-pack/plugins/console_extensions/server/spec/generated/enrich.execute_policy.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/enrich.execute_policy.json rename to x-pack/plugins/console_extensions/server/spec/generated/enrich.execute_policy.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/enrich.get_policy.json b/x-pack/plugins/console_extensions/server/spec/generated/enrich.get_policy.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/enrich.get_policy.json rename to x-pack/plugins/console_extensions/server/spec/generated/enrich.get_policy.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/enrich.put_policy.json b/x-pack/plugins/console_extensions/server/spec/generated/enrich.put_policy.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/enrich.put_policy.json rename to x-pack/plugins/console_extensions/server/spec/generated/enrich.put_policy.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/enrich.stats.json b/x-pack/plugins/console_extensions/server/spec/generated/enrich.stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/enrich.stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/enrich.stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/graph.explore.json b/x-pack/plugins/console_extensions/server/spec/generated/graph.explore.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/graph.explore.json rename to x-pack/plugins/console_extensions/server/spec/generated/graph.explore.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.delete_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.delete_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.delete_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.delete_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.explain_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.explain_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.explain_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.explain_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.get_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.get_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.get_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.get_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.get_status.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.get_status.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.get_status.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.get_status.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.move_to_step.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.move_to_step.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.move_to_step.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.move_to_step.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.put_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.put_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.put_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.put_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.remove_policy.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.remove_policy.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.remove_policy.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.remove_policy.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.retry.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.retry.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.retry.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.retry.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.set_policy.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.set_policy.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.set_policy.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.set_policy.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.start.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.start.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.start.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.start.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ilm.stop.json b/x-pack/plugins/console_extensions/server/spec/generated/ilm.stop.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ilm.stop.json rename to x-pack/plugins/console_extensions/server/spec/generated/ilm.stop.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/indices.freeze.json b/x-pack/plugins/console_extensions/server/spec/generated/indices.freeze.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/indices.freeze.json rename to x-pack/plugins/console_extensions/server/spec/generated/indices.freeze.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/indices.reload_search_analyzers.json b/x-pack/plugins/console_extensions/server/spec/generated/indices.reload_search_analyzers.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/indices.reload_search_analyzers.json rename to x-pack/plugins/console_extensions/server/spec/generated/indices.reload_search_analyzers.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/indices.unfreeze.json b/x-pack/plugins/console_extensions/server/spec/generated/indices.unfreeze.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/indices.unfreeze.json rename to x-pack/plugins/console_extensions/server/spec/generated/indices.unfreeze.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/license.delete.json b/x-pack/plugins/console_extensions/server/spec/generated/license.delete.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/license.delete.json rename to x-pack/plugins/console_extensions/server/spec/generated/license.delete.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/license.get.json b/x-pack/plugins/console_extensions/server/spec/generated/license.get.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/license.get.json rename to x-pack/plugins/console_extensions/server/spec/generated/license.get.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/license.get_basic_status.json b/x-pack/plugins/console_extensions/server/spec/generated/license.get_basic_status.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/license.get_basic_status.json rename to x-pack/plugins/console_extensions/server/spec/generated/license.get_basic_status.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/license.get_trial_status.json b/x-pack/plugins/console_extensions/server/spec/generated/license.get_trial_status.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/license.get_trial_status.json rename to x-pack/plugins/console_extensions/server/spec/generated/license.get_trial_status.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/license.post.json b/x-pack/plugins/console_extensions/server/spec/generated/license.post.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/license.post.json rename to x-pack/plugins/console_extensions/server/spec/generated/license.post.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/license.post_start_basic.json b/x-pack/plugins/console_extensions/server/spec/generated/license.post_start_basic.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/license.post_start_basic.json rename to x-pack/plugins/console_extensions/server/spec/generated/license.post_start_basic.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/license.post_start_trial.json b/x-pack/plugins/console_extensions/server/spec/generated/license.post_start_trial.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/license.post_start_trial.json rename to x-pack/plugins/console_extensions/server/spec/generated/license.post_start_trial.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/migration.deprecations.json b/x-pack/plugins/console_extensions/server/spec/generated/migration.deprecations.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/migration.deprecations.json rename to x-pack/plugins/console_extensions/server/spec/generated/migration.deprecations.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/migration.get_assistance.json b/x-pack/plugins/console_extensions/server/spec/generated/migration.get_assistance.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/migration.get_assistance.json rename to x-pack/plugins/console_extensions/server/spec/generated/migration.get_assistance.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/migration.upgrade.json b/x-pack/plugins/console_extensions/server/spec/generated/migration.upgrade.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/migration.upgrade.json rename to x-pack/plugins/console_extensions/server/spec/generated/migration.upgrade.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.close_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.close_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.close_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.close_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_calendar.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_calendar.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_calendar.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_calendar.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_calendar_event.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_calendar_event.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_calendar_event.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_calendar_event.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_calendar_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_calendar_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_calendar_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_calendar_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_datafeed.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_expired_data.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_expired_data.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_expired_data.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_expired_data.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_filter.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_filter.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_filter.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_filter.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_forecast.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_forecast.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_forecast.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_forecast.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_model_snapshot.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_model_snapshot.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_model_snapshot.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_model_snapshot.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_trained_model.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.delete_trained_model.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.delete_trained_model.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.delete_trained_model.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.estimate_memory_usage.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.estimate_memory_usage.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.estimate_memory_usage.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.estimate_memory_usage.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.evaluate_data_frame.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.evaluate_data_frame.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.evaluate_data_frame.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.evaluate_data_frame.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.explain_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.explain_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.explain_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.explain_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.find_file_structure.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.find_file_structure.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.find_file_structure.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.find_file_structure.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.flush_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.flush_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.flush_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.flush_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.forecast.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.forecast.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.forecast.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.forecast.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_buckets.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_buckets.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_buckets.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_buckets.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_calendar_events.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_calendar_events.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_calendar_events.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_calendar_events.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_calendars.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_calendars.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_calendars.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_calendars.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_categories.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_categories.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_categories.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_categories.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_data_frame_analytics_stats.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_data_frame_analytics_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_data_frame_analytics_stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_data_frame_analytics_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_datafeed_stats.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_datafeed_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_datafeed_stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_datafeed_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_datafeeds.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_datafeeds.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_datafeeds.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_datafeeds.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_filters.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_filters.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_filters.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_filters.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_influencers.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_influencers.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_influencers.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_influencers.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_job_stats.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_job_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_job_stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_job_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_jobs.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_jobs.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_jobs.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_jobs.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_model_snapshots.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_model_snapshots.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_model_snapshots.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_model_snapshots.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_overall_buckets.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_overall_buckets.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_overall_buckets.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_overall_buckets.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_records.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_records.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_records.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_records.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_trained_models.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_trained_models.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_trained_models.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_trained_models.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_trained_models_stats.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.get_trained_models_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.get_trained_models_stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.get_trained_models_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.info.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.info.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.info.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.info.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.open_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.open_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.open_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.open_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.post_calendar_events.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.post_calendar_events.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.post_calendar_events.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.post_calendar_events.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.post_data.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.post_data.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.post_data.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.post_data.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.preview_datafeed.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.preview_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.preview_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.preview_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_calendar.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.put_calendar.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_calendar.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.put_calendar.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_calendar_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.put_calendar_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_calendar_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.put_calendar_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.put_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.put_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_datafeed.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.put_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.put_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_filter.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.put_filter.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_filter.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.put_filter.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.put_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.put_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_trained_model.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.put_trained_model.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.put_trained_model.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.put_trained_model.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.revert_model_snapshot.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.revert_model_snapshot.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.revert_model_snapshot.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.revert_model_snapshot.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.set_upgrade_mode.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.set_upgrade_mode.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.set_upgrade_mode.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.set_upgrade_mode.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.start_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.start_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.start_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.start_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.start_datafeed.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.start_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.start_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.start_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.stop_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.stop_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.stop_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.stop_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.stop_datafeed.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.stop_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.stop_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.stop_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_datafeed.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.update_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.update_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_filter.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.update_filter.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_filter.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.update_filter.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_job.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.update_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.update_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_model_snapshot.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.update_model_snapshot.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.update_model_snapshot.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.update_model_snapshot.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.upgrade.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.upgrade.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.upgrade.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.upgrade.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.validate.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.validate.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.validate.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.validate.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ml.validate_detector.json b/x-pack/plugins/console_extensions/server/spec/generated/ml.validate_detector.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ml.validate_detector.json rename to x-pack/plugins/console_extensions/server/spec/generated/ml.validate_detector.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/monitoring.bulk.json b/x-pack/plugins/console_extensions/server/spec/generated/monitoring.bulk.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/monitoring.bulk.json rename to x-pack/plugins/console_extensions/server/spec/generated/monitoring.bulk.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.delete_job.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.delete_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.delete_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.delete_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.get_jobs.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.get_jobs.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.get_jobs.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.get_jobs.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.get_rollup_caps.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.get_rollup_caps.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.get_rollup_caps.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.get_rollup_caps.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.get_rollup_index_caps.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.get_rollup_index_caps.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.get_rollup_index_caps.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.get_rollup_index_caps.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.put_job.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.put_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.put_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.put_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.rollup_search.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.rollup_search.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.rollup_search.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.rollup_search.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.start_job.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.start_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.start_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.start_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/rollup.stop_job.json b/x-pack/plugins/console_extensions/server/spec/generated/rollup.stop_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/rollup.stop_job.json rename to x-pack/plugins/console_extensions/server/spec/generated/rollup.stop_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.authenticate.json b/x-pack/plugins/console_extensions/server/spec/generated/security.authenticate.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.authenticate.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.authenticate.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.change_password.json b/x-pack/plugins/console_extensions/server/spec/generated/security.change_password.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.change_password.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.change_password.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.clear_cached_realms.json b/x-pack/plugins/console_extensions/server/spec/generated/security.clear_cached_realms.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.clear_cached_realms.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.clear_cached_realms.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.clear_cached_roles.json b/x-pack/plugins/console_extensions/server/spec/generated/security.clear_cached_roles.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.clear_cached_roles.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.clear_cached_roles.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.create_api_key.json b/x-pack/plugins/console_extensions/server/spec/generated/security.create_api_key.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.create_api_key.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.create_api_key.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_privileges.json b/x-pack/plugins/console_extensions/server/spec/generated/security.delete_privileges.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_privileges.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.delete_privileges.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_role.json b/x-pack/plugins/console_extensions/server/spec/generated/security.delete_role.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_role.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.delete_role.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_role_mapping.json b/x-pack/plugins/console_extensions/server/spec/generated/security.delete_role_mapping.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_role_mapping.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.delete_role_mapping.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_user.json b/x-pack/plugins/console_extensions/server/spec/generated/security.delete_user.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.delete_user.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.delete_user.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.disable_user.json b/x-pack/plugins/console_extensions/server/spec/generated/security.disable_user.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.disable_user.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.disable_user.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.enable_user.json b/x-pack/plugins/console_extensions/server/spec/generated/security.enable_user.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.enable_user.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.enable_user.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_api_key.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_api_key.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_api_key.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_api_key.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_builtin_privileges.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_builtin_privileges.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_builtin_privileges.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_builtin_privileges.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_privileges.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_privileges.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_privileges.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_privileges.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_role.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_role.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_role.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_role.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_role_mapping.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_role_mapping.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_role_mapping.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_role_mapping.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_token.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_token.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_token.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_token.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_user.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_user.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_user.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_user.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.get_user_privileges.json b/x-pack/plugins/console_extensions/server/spec/generated/security.get_user_privileges.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.get_user_privileges.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.get_user_privileges.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.has_privileges.json b/x-pack/plugins/console_extensions/server/spec/generated/security.has_privileges.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.has_privileges.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.has_privileges.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.invalidate_api_key.json b/x-pack/plugins/console_extensions/server/spec/generated/security.invalidate_api_key.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.invalidate_api_key.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.invalidate_api_key.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.invalidate_token.json b/x-pack/plugins/console_extensions/server/spec/generated/security.invalidate_token.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.invalidate_token.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.invalidate_token.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.put_privileges.json b/x-pack/plugins/console_extensions/server/spec/generated/security.put_privileges.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.put_privileges.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.put_privileges.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.put_role.json b/x-pack/plugins/console_extensions/server/spec/generated/security.put_role.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.put_role.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.put_role.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.put_role_mapping.json b/x-pack/plugins/console_extensions/server/spec/generated/security.put_role_mapping.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.put_role_mapping.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.put_role_mapping.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/security.put_user.json b/x-pack/plugins/console_extensions/server/spec/generated/security.put_user.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/security.put_user.json rename to x-pack/plugins/console_extensions/server/spec/generated/security.put_user.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.delete_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.delete_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.delete_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.delete_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.execute_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.execute_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.execute_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.execute_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.execute_retention.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.execute_retention.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.execute_retention.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.execute_retention.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.get_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.get_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.get_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.get_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.get_stats.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.get_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.get_stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.get_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.get_status.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.get_status.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.get_status.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.get_status.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.put_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.put_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.put_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.put_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.start.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.start.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.start.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.start.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/slm.stop.json b/x-pack/plugins/console_extensions/server/spec/generated/slm.stop.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/slm.stop.json rename to x-pack/plugins/console_extensions/server/spec/generated/slm.stop.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/sql.clear_cursor.json b/x-pack/plugins/console_extensions/server/spec/generated/sql.clear_cursor.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/sql.clear_cursor.json rename to x-pack/plugins/console_extensions/server/spec/generated/sql.clear_cursor.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/sql.query.json b/x-pack/plugins/console_extensions/server/spec/generated/sql.query.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/sql.query.json rename to x-pack/plugins/console_extensions/server/spec/generated/sql.query.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/sql.translate.json b/x-pack/plugins/console_extensions/server/spec/generated/sql.translate.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/sql.translate.json rename to x-pack/plugins/console_extensions/server/spec/generated/sql.translate.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/ssl.certificates.json b/x-pack/plugins/console_extensions/server/spec/generated/ssl.certificates.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/ssl.certificates.json rename to x-pack/plugins/console_extensions/server/spec/generated/ssl.certificates.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.delete_transform.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.delete_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.delete_transform.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.delete_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.get_transform.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.get_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.get_transform.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.get_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.get_transform_stats.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.get_transform_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.get_transform_stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.get_transform_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.preview_transform.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.preview_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.preview_transform.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.preview_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.put_transform.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.put_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.put_transform.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.put_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.start_transform.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.start_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.start_transform.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.start_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.stop_transform.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.stop_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.stop_transform.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.stop_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/transform.update_transform.json b/x-pack/plugins/console_extensions/server/spec/generated/transform.update_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/transform.update_transform.json rename to x-pack/plugins/console_extensions/server/spec/generated/transform.update_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.ack_watch.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.ack_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.ack_watch.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.ack_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.activate_watch.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.activate_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.activate_watch.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.activate_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.deactivate_watch.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.deactivate_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.deactivate_watch.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.deactivate_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.delete_watch.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.delete_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.delete_watch.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.delete_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.execute_watch.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.execute_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.execute_watch.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.execute_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.get_watch.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.get_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.get_watch.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.get_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.put_watch.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.put_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.put_watch.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.put_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.start.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.start.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.start.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.start.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.stats.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.stats.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/watcher.stop.json b/x-pack/plugins/console_extensions/server/spec/generated/watcher.stop.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/watcher.stop.json rename to x-pack/plugins/console_extensions/server/spec/generated/watcher.stop.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/xpack.info.json b/x-pack/plugins/console_extensions/server/spec/generated/xpack.info.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/xpack.info.json rename to x-pack/plugins/console_extensions/server/spec/generated/xpack.info.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/xpack.ssl.certificates.json b/x-pack/plugins/console_extensions/server/spec/generated/xpack.ssl.certificates.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/xpack.ssl.certificates.json rename to x-pack/plugins/console_extensions/server/spec/generated/xpack.ssl.certificates.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/generated/xpack.usage.json b/x-pack/plugins/console_extensions/server/spec/generated/xpack.usage.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/generated/xpack.usage.json rename to x-pack/plugins/console_extensions/server/spec/generated/xpack.usage.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/ingest/index.js b/x-pack/plugins/console_extensions/server/spec/ingest/index.ts similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/ingest/index.js rename to x-pack/plugins/console_extensions/server/spec/ingest/index.ts diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.follow.json b/x-pack/plugins/console_extensions/server/spec/overrides/ccr.follow.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.follow.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ccr.follow.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.forget_follower.json b/x-pack/plugins/console_extensions/server/spec/overrides/ccr.forget_follower.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.forget_follower.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ccr.forget_follower.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.put_auto_follow_pattern.json b/x-pack/plugins/console_extensions/server/spec/overrides/ccr.put_auto_follow_pattern.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.put_auto_follow_pattern.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ccr.put_auto_follow_pattern.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.resume_follow.json b/x-pack/plugins/console_extensions/server/spec/overrides/ccr.resume_follow.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ccr.resume_follow.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ccr.resume_follow.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/enrich.put_policy.json b/x-pack/plugins/console_extensions/server/spec/overrides/enrich.put_policy.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/enrich.put_policy.json rename to x-pack/plugins/console_extensions/server/spec/overrides/enrich.put_policy.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ilm.move_to_step.json b/x-pack/plugins/console_extensions/server/spec/overrides/ilm.move_to_step.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ilm.move_to_step.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ilm.move_to_step.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ilm.put_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/overrides/ilm.put_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ilm.put_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ilm.put_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.estimate_memory_usage.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.estimate_memory_usage.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.estimate_memory_usage.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.estimate_memory_usage.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.evaluate_data_frame.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.evaluate_data_frame.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.evaluate_data_frame.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.evaluate_data_frame.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.explain_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.explain_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.explain_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.explain_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_buckets.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_buckets.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_buckets.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_buckets.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_calendar_events.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_calendar_events.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_calendar_events.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_calendar_events.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_calendars.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_calendars.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_calendars.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_calendars.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_categories.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_categories.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_categories.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_categories.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_influencers.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_influencers.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_influencers.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_influencers.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_model_snapshots.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_model_snapshots.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_model_snapshots.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_model_snapshots.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_overall_buckets.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_overall_buckets.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_overall_buckets.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_overall_buckets.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_records.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.get_records.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.get_records.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.get_records.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.post_calendar_events.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.post_calendar_events.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.post_calendar_events.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.post_calendar_events.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_calendar.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.put_calendar.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_calendar.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.put_calendar.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_data_frame_analytics.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.put_data_frame_analytics.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_data_frame_analytics.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.put_data_frame_analytics.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_datafeed.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.put_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.put_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_job.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.put_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_job.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.put_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_trained_model.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.put_trained_model.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.put_trained_model.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.put_trained_model.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.revert_model_snapshot.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.revert_model_snapshot.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.revert_model_snapshot.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.revert_model_snapshot.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.update_datafeed.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.update_datafeed.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.update_datafeed.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.update_datafeed.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.update_job.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.update_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.update_job.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.update_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/ml.update_model_snapshot.json b/x-pack/plugins/console_extensions/server/spec/overrides/ml.update_model_snapshot.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/ml.update_model_snapshot.json rename to x-pack/plugins/console_extensions/server/spec/overrides/ml.update_model_snapshot.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.authenticate.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.authenticate.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.authenticate.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.authenticate.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.change_password.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.change_password.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.change_password.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.change_password.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.create_api_key.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.create_api_key.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.create_api_key.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.create_api_key.json diff --git a/x-pack/plugins/console_extensions/server/spec/overrides/security.delete_privileges.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.delete_privileges.json new file mode 100644 index 000000000000..35fb78c532c1 --- /dev/null +++ b/x-pack/plugins/console_extensions/server/spec/overrides/security.delete_privileges.json @@ -0,0 +1,3 @@ +{ + "documentation": "https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-privilege.html" +} diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.get_token.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.get_token.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.get_token.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.get_token.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.has_privileges.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.has_privileges.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.has_privileges.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.has_privileges.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.invalidate_api_key.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.invalidate_api_key.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.invalidate_api_key.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.invalidate_api_key.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.invalidate_token.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.invalidate_token.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.invalidate_token.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.invalidate_token.json diff --git a/x-pack/plugins/console_extensions/server/spec/overrides/security.put_privileges.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.put_privileges.json new file mode 100644 index 000000000000..ae37d9a88954 --- /dev/null +++ b/x-pack/plugins/console_extensions/server/spec/overrides/security.put_privileges.json @@ -0,0 +1,3 @@ +{ + "documentation": "https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-privileges.html" +} diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.put_role.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.put_role.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.put_role.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.put_role.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.put_role_mapping.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.put_role_mapping.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.put_role_mapping.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.put_role_mapping.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/security.put_user.json b/x-pack/plugins/console_extensions/server/spec/overrides/security.put_user.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/security.put_user.json rename to x-pack/plugins/console_extensions/server/spec/overrides/security.put_user.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/slm.put_lifecycle.json b/x-pack/plugins/console_extensions/server/spec/overrides/slm.put_lifecycle.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/slm.put_lifecycle.json rename to x-pack/plugins/console_extensions/server/spec/overrides/slm.put_lifecycle.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/slm.start.json b/x-pack/plugins/console_extensions/server/spec/overrides/slm.start.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/slm.start.json rename to x-pack/plugins/console_extensions/server/spec/overrides/slm.start.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/slm.stop.json b/x-pack/plugins/console_extensions/server/spec/overrides/slm.stop.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/slm.stop.json rename to x-pack/plugins/console_extensions/server/spec/overrides/slm.stop.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/sql.query.json b/x-pack/plugins/console_extensions/server/spec/overrides/sql.query.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/sql.query.json rename to x-pack/plugins/console_extensions/server/spec/overrides/sql.query.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/transform.get_transform_stats.json b/x-pack/plugins/console_extensions/server/spec/overrides/transform.get_transform_stats.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/transform.get_transform_stats.json rename to x-pack/plugins/console_extensions/server/spec/overrides/transform.get_transform_stats.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/transform.preview_transform.json b/x-pack/plugins/console_extensions/server/spec/overrides/transform.preview_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/transform.preview_transform.json rename to x-pack/plugins/console_extensions/server/spec/overrides/transform.preview_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/transform.put_transform.json b/x-pack/plugins/console_extensions/server/spec/overrides/transform.put_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/transform.put_transform.json rename to x-pack/plugins/console_extensions/server/spec/overrides/transform.put_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/transform.stop_transform.json b/x-pack/plugins/console_extensions/server/spec/overrides/transform.stop_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/transform.stop_transform.json rename to x-pack/plugins/console_extensions/server/spec/overrides/transform.stop_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/transform.update_transform.json b/x-pack/plugins/console_extensions/server/spec/overrides/transform.update_transform.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/transform.update_transform.json rename to x-pack/plugins/console_extensions/server/spec/overrides/transform.update_transform.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.graph.explore.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.graph.explore.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.graph.explore.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.graph.explore.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.info.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.info.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.info.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.info.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.license.post.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.license.post.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.license.post.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.license.post.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.rollup.delete_job.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.rollup.delete_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.rollup.delete_job.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.rollup.delete_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.rollup.put_job.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.rollup.put_job.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.rollup.put_job.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.rollup.put_job.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.rollup.rollup_search.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.rollup.rollup_search.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.rollup.rollup_search.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.rollup.rollup_search.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.authenticate.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.authenticate.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.authenticate.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.authenticate.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.change_password.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.change_password.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.change_password.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.change_password.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.get_token.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.get_token.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.get_token.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.get_token.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.invalidate_token.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.invalidate_token.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.invalidate_token.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.invalidate_token.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.put_role.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.put_role.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.put_role.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.put_role.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.put_role_mapping.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.put_role_mapping.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.put_role_mapping.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.put_role_mapping.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.put_user.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.put_user.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.security.put_user.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.security.put_user.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.watcher.execute_watch.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.watcher.execute_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.watcher.execute_watch.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.watcher.execute_watch.json diff --git a/x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.watcher.put_watch.json b/x-pack/plugins/console_extensions/server/spec/overrides/xpack.watcher.put_watch.json similarity index 100% rename from x-pack/legacy/plugins/console_extensions/spec/overrides/xpack.watcher.put_watch.json rename to x-pack/plugins/console_extensions/server/spec/overrides/xpack.watcher.put_watch.json