mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 01:38:56 -04:00
This commit is contained in:
parent
acd99a13c5
commit
b9599a7177
2 changed files with 18 additions and 1 deletions
|
@ -3,11 +3,12 @@ const { join, basename } = require('path');
|
|||
const { readFileSync } = require('fs');
|
||||
const { merge } = require('lodash');
|
||||
|
||||
const extensionSpecFilePaths = [];
|
||||
export function getSpec() {
|
||||
const generatedFiles = glob.sync(join(__dirname, 'generated', '*.json'));
|
||||
const overrideFiles = glob.sync(join(__dirname, 'overrides', '*.json'));
|
||||
|
||||
return generatedFiles.reduce((acc, file) => {
|
||||
const result = generatedFiles.reduce((acc, file) => {
|
||||
const overrideFile = overrideFiles.find(f => basename(f) === basename(file));
|
||||
const loadedSpec = JSON.parse(readFileSync(file, 'utf8'));
|
||||
if (overrideFile) {
|
||||
|
@ -25,4 +26,17 @@ export function getSpec() {
|
|||
|
||||
return { ...acc, ...spec };
|
||||
}, {});
|
||||
extensionSpecFilePaths.forEach((extensionSpecFilePath) => {
|
||||
const extensionFiles = glob.sync(join(extensionSpecFilePath, '*.json'));
|
||||
extensionFiles.forEach((extensionFile) => {
|
||||
merge(result, JSON.parse(readFileSync(extensionFile, 'utf8')));
|
||||
});
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
export function consoleMixin(kbnServer, server) {
|
||||
server.decorate('server', 'addExtensionSpecFilePath', (extensionSpecFilePath) => {
|
||||
extensionSpecFilePaths.push(extensionSpecFilePath);
|
||||
});
|
||||
}
|
|
@ -19,6 +19,7 @@ import { savedObjectsMixin } from './saved_objects';
|
|||
import { kibanaIndexMappingsMixin } from './mappings';
|
||||
import { serverExtensionsMixin } from './server_extensions';
|
||||
import { uiMixin } from '../ui';
|
||||
import { consoleMixin } from '../core_plugins/console/api_server/spec';
|
||||
|
||||
const rootDir = fromRoot('.');
|
||||
|
||||
|
@ -63,6 +64,8 @@ export default class KbnServer {
|
|||
// setup saved object routes
|
||||
savedObjectsMixin,
|
||||
|
||||
// setup extension point for console autocomplete endpoints
|
||||
consoleMixin,
|
||||
// ensure that all bundles are built, or that the
|
||||
// watch bundle server is running
|
||||
optimizeMixin,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue