From acd74a2b6ba285db4ec5d9ff0bd2e0493f0fa32d Mon Sep 17 00:00:00 2001 From: Spencer Date: Mon, 12 Feb 2018 17:46:12 -0700 Subject: [PATCH] [6.x] Condense build task (#16687) (#16689) * [build] don't copy unwanted files * [build] condense mkdir/touch tasks * [i18n] verifyTranslations task has nothing to do with the build, just run in tests --- tasks/build/babel_cache.js | 8 -------- tasks/build/create_empty_dirs_and_files.js | 14 ++++++++++++++ tasks/build/data.js | 5 ----- tasks/build/index.js | 6 +----- tasks/build/installed_plugins.js | 5 ----- tasks/config/clean.js | 1 - tasks/config/copy.js | 1 + tasks/jenkins.js | 2 +- tasks/test.js | 3 ++- tasks/{build => }/verify_translations.js | 12 ++++++------ 10 files changed, 25 insertions(+), 32 deletions(-) delete mode 100644 tasks/build/babel_cache.js create mode 100644 tasks/build/create_empty_dirs_and_files.js delete mode 100644 tasks/build/data.js delete mode 100644 tasks/build/installed_plugins.js rename tasks/{build => }/verify_translations.js (81%) diff --git a/tasks/build/babel_cache.js b/tasks/build/babel_cache.js deleted file mode 100644 index 272ad049f183..000000000000 --- a/tasks/build/babel_cache.js +++ /dev/null @@ -1,8 +0,0 @@ -export default function (grunt) { - grunt.registerTask('_build:babelCache', function () { - //When running from built packages, if a plugin is installed before babelcache - //exists it can become owned by root. This causes server startup to fail because - //the optimization process can't write to .babelcache.json. - grunt.file.write('build/kibana/optimize/.babelcache.json', '{}\n'); - }); -} diff --git a/tasks/build/create_empty_dirs_and_files.js b/tasks/build/create_empty_dirs_and_files.js new file mode 100644 index 000000000000..19c763b53b1d --- /dev/null +++ b/tasks/build/create_empty_dirs_and_files.js @@ -0,0 +1,14 @@ +module.exports = function (grunt) { + grunt.registerTask('_build:createEmptyDirsAndFiles', function () { + // force the plugins directory to exist + grunt.file.mkdir('build/kibana/plugins'); + + // force the data directory to exist + grunt.file.mkdir('build/kibana/data'); + + // When running from built packages, if a plugin is installed before babelcache + // exists it can become owned by root. This causes server startup to fail because + // the optimization process can't write to .babelcache.json. + grunt.file.write('build/kibana/optimize/.babelcache.json', '{}\n'); + }); +}; diff --git a/tasks/build/data.js b/tasks/build/data.js deleted file mode 100644 index 4077702c2f09..000000000000 --- a/tasks/build/data.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function (grunt) { - grunt.registerTask('_build:data', function () { - grunt.file.mkdir('build/kibana/data'); - }); -} diff --git a/tasks/build/index.js b/tasks/build/index.js index f751942ed9fb..6b742bfb347d 100644 --- a/tasks/build/index.js +++ b/tasks/build/index.js @@ -10,14 +10,10 @@ module.exports = function (grunt) { '_build:downloadNodeBuilds', '_build:extractNodeBuilds', 'copy:devSource', - 'clean:devSourceForTestbed', 'babel:build', - '_build:plugins', - '_build:data', - '_build:verifyTranslations', + '_build:createEmptyDirsAndFiles', '_build:packageJson', '_build:readme', - '_build:babelCache', '_build:packages', '_build:installDependencies', 'clean:packages', diff --git a/tasks/build/installed_plugins.js b/tasks/build/installed_plugins.js deleted file mode 100644 index bc486acdf00f..000000000000 --- a/tasks/build/installed_plugins.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = function (grunt) { - grunt.registerTask('_build:plugins', function () { - grunt.file.mkdir('build/kibana/plugins'); - }); -}; diff --git a/tasks/config/clean.js b/tasks/config/clean.js index 21f859b0378a..7cd53949e797 100644 --- a/tasks/config/clean.js +++ b/tasks/config/clean.js @@ -4,7 +4,6 @@ module.exports = function () { target: 'target', testsFromModules: 'build/kibana/node_modules/**/{test,tests}/**', examplesFromModules: 'build/kibana/node_modules/**/{example,examples}/**', - devSourceForTestbed: 'build/kibana/src/core_plugins/testbed/', packages: 'build/kibana/packages' }; }; diff --git a/tasks/config/copy.js b/tasks/config/copy.js index f0151e83408c..ca0feb1bb390 100644 --- a/tasks/config/copy.js +++ b/tasks/config/copy.js @@ -10,6 +10,7 @@ module.exports = function () { '!src/fixtures/**', '!src/core_plugins/dev_mode/**', '!src/core_plugins/tests_bundle/**', + '!src/core_plugins/testbed/**', '!src/core_plugins/console/public/tests/**', '!src/cli/cluster/**', '!src/ui_framework/doc_site/**', diff --git a/tasks/jenkins.js b/tasks/jenkins.js index d66505800695..b0baaed81d22 100644 --- a/tasks/jenkins.js +++ b/tasks/jenkins.js @@ -41,7 +41,7 @@ module.exports = function (grunt) { 'test:jest', 'test:browser-ci', 'test:api', - '_build:verifyTranslations', + 'verifyTranslations', ]); grunt.config.set('functional_test_runner.functional.options.configOverrides.mochaOpts.bail', true); diff --git a/tasks/test.js b/tasks/test.js index 365bb6914748..92f47037586a 100644 --- a/tasks/test.js +++ b/tasks/test.js @@ -99,7 +99,8 @@ module.exports = function (grunt) { grunt.task.run(_.compact([ !grunt.option('quick') && 'run:eslint', 'licenses', - 'test:quick' + 'test:quick', + 'verifyTranslations', ])); }); diff --git a/tasks/build/verify_translations.js b/tasks/verify_translations.js similarity index 81% rename from tasks/build/verify_translations.js rename to tasks/verify_translations.js index 5ec6fceb6db0..f90182647146 100644 --- a/tasks/build/verify_translations.js +++ b/tasks/verify_translations.js @@ -1,12 +1,12 @@ -import { fromRoot, formatListAsProse } from '../../src/utils'; -import * as i18nVerify from '../utils/i18n_verify_keys'; +import { fromRoot, formatListAsProse } from '../src/utils'; +import { findPluginSpecs } from '../src/plugin_discovery'; +import { collectUiExports } from '../src/ui'; +import { I18n } from '../src/ui/ui_i18n/i18n'; -import { findPluginSpecs } from '../../src/plugin_discovery'; -import { collectUiExports } from '../../src/ui'; -import { I18n } from '../../src/ui/ui_i18n/i18n'; +import * as i18nVerify from './utils/i18n_verify_keys'; export default function (grunt) { - grunt.registerTask('_build:verifyTranslations', async function () { + grunt.registerTask('verifyTranslations', async function () { const done = this.async(); try {