mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 17:59:23 -04:00
This is useful for when a pre-release build is completely tested and could be released as-is if it weren't for the pre-release suffix and commit hash. It will extract the archives in the target, replace the version, sha, and build numbers with the current working copy's, and then recreate the archives and shas.
93 lines
2.9 KiB
JavaScript
93 lines
2.9 KiB
JavaScript
const camelCase = require('lodash').camelCase;
|
|
require('babel/register')(require('./src/optimize/babel_options').node);
|
|
|
|
module.exports = function (grunt) {
|
|
// set the config once before calling load-grunt-config
|
|
// and once during so that we have access to it via
|
|
// grunt.config.get() within the config files
|
|
const config = {
|
|
pkg: grunt.file.readJSON('package.json'),
|
|
root: __dirname,
|
|
src: __dirname + '/src',
|
|
build: __dirname + '/build', // temporary build directory
|
|
plugins: __dirname + '/src/plugins',
|
|
server: __dirname + '/src/server',
|
|
target: __dirname + '/target', // location of the compressed build targets
|
|
testUtilsDir: __dirname + '/src/test_utils',
|
|
configFile: __dirname + '/src/config/kibana.yml',
|
|
|
|
karmaBrowser: (function () {
|
|
if (grunt.option('browser')) {
|
|
return grunt.option('browser');
|
|
}
|
|
|
|
switch (require('os').platform()) {
|
|
case 'win32':
|
|
return 'IE';
|
|
case 'darwin':
|
|
return 'Chrome';
|
|
default:
|
|
return 'Firefox';
|
|
}
|
|
}()),
|
|
|
|
nodeVersion: grunt.file.read('.node-version').trim(),
|
|
|
|
meta: {
|
|
banner: '/*! <%= package.name %> - v<%= package.version %> - ' +
|
|
'<%= grunt.template.today("yyyy-mm-dd") %>\n' +
|
|
'<%= package.homepage ? " * " + package.homepage + "\\n" : "" %>' +
|
|
' * Copyright (c) <%= grunt.template.today("yyyy") %> <%= package.author.company %>;' +
|
|
' Licensed <%= package.license %> */\n'
|
|
},
|
|
|
|
lintThese: [
|
|
'Gruntfile.js',
|
|
'<%= root %>/tasks/**/*.js',
|
|
'<%= root %>/test/**/*.js',
|
|
'<%= src %>/**/*.js',
|
|
'!<%= src %>/fixtures/**/*.js',
|
|
'!<%= root %>/test/fixtures/scenarios/**/*.js'
|
|
],
|
|
deepModules: {
|
|
'caniuse-db': '1.0.30000265',
|
|
'chalk': '1.1.0',
|
|
'glob': '4.5.3',
|
|
'har-validator': '1.8.0',
|
|
'json5': '0.4.0',
|
|
'loader-utils': '0.2.11',
|
|
'micromatch': '2.2.0',
|
|
'postcss-normalize-url': '2.1.1',
|
|
'postcss-reduce-idents': '1.0.2',
|
|
'postcss-unique-selectors': '1.0.0',
|
|
'postcss-minify-selectors': '1.4.6',
|
|
'postcss-single-charset': '0.3.0',
|
|
'regenerator': '0.8.36',
|
|
'readable-stream': '2.1.0'
|
|
}
|
|
};
|
|
|
|
grunt.config.merge(config);
|
|
|
|
config.userScriptsDir = __dirname + '/build/userScripts';
|
|
// ensure that these run first, other configs need them
|
|
config.services = require('./tasks/config/services')(grunt);
|
|
config.platforms = require('./tasks/config/platforms')(grunt);
|
|
|
|
grunt.config.merge(config);
|
|
|
|
// load plugins
|
|
require('load-grunt-config')(grunt, {
|
|
configPath: __dirname + '/tasks/config',
|
|
init: true,
|
|
config: config,
|
|
loadGruntTasks: {
|
|
pattern: ['grunt-*', '@*/grunt-*', 'gruntify-*', '@*/gruntify-*', 'intern']
|
|
}
|
|
});
|
|
|
|
// load task definitions
|
|
grunt.task.loadTasks('tasks');
|
|
grunt.task.loadTasks('tasks/build');
|
|
grunt.task.loadTasks('tasks/rebuild');
|
|
};
|