ensure that current buildSha and buildNum are read into config

This commit is contained in:
spalger 2015-08-10 16:01:02 -07:00
parent ea4f0cd474
commit 7671fc689a
10 changed files with 24 additions and 58 deletions

View file

@ -13,7 +13,8 @@
"private": false,
"version": "4.2.0-snapshot",
"build": {
"num": 8095
"number": 8173,
"sha": "0102888deb393e4141369fbd1644a5d77f8732da"
},
"main": "src/server/KbnServer.js",
"homepage": "https://www.elastic.co/products/kibana",
@ -131,7 +132,6 @@
"grunt-contrib-copy": "^0.8.0",
"grunt-esvm": "^1.1.3",
"grunt-karma": "^0.12.0",
"grunt-replace": "^0.7.9",
"grunt-run": "spalger/grunt-run#master",
"grunt-s3": "^0.2.0-alpha.3",
"grunt-simple-mocha": "^0.4.0",

View file

@ -18,7 +18,7 @@
<tr>
<td>Commit SHA</td>
<td>{{commitSha | limitTo:7}}</td>
<td>{{buildSha | limitTo:7}}</td>
</tr>
</table>

View file

@ -7,10 +7,10 @@ define(function (require) {
});
require('ui/modules').get('apps/settings')
.controller('settingsAbout', function ($scope, kbnVersion, buildNum, commitSha) {
.controller('settingsAbout', function ($scope, kbnVersion, buildNum, buildSha) {
$scope.kbnVersion = kbnVersion;
$scope.buildNum = buildNum;
$scope.commitSha = commitSha;
$scope.buildSha = buildSha;
});
return {

View file

@ -58,18 +58,22 @@ module.exports = class Config {
if (_.isObject(env)) env = env.name;
if (!env) env = process.env.NODE_ENV || 'production';
let dev = env === 'development';
let prod = env === 'production';
// pass the environment as context so that it can be refed in config
let context = {
env: env,
prod: env === 'production',
dev: env === 'development',
notProd: env !== 'production',
notDev: env !== 'development',
prod: prod,
dev: dev,
notProd: !prod,
notDev: !dev,
version: _.get(pkg, 'version'),
buildNum: env === 'development' ? Math.pow(2, 53) - 1 : _.get(pkg, 'build.num', NaN)
buildNum: dev ? Math.pow(2, 53) - 1 : _.get(pkg, 'build.number', NaN),
buildSha: dev ? 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' : _.get(pkg, 'build.sha', '')
};
if (!context.dev && !context.prod && !context.test) {
if (!context.dev && !context.prod) {
throw new TypeError(
`Unexpected environment "${env}", expected one of "development" or "production"`
);

View file

@ -9,7 +9,8 @@ let fromRoot = utils('fromRoot');
module.exports = Joi.object({
pkg: Joi.object({
version: Joi.string().default(Joi.ref('$version')),
buildNum: Joi.number().default(Joi.ref('$buildNum'))
buildNum: Joi.number().default(Joi.ref('$buildNum')),
buildSha: Joi.string().default(Joi.ref('$buildSha')),
}).default(),
env: Joi.object({

View file

@ -81,17 +81,15 @@ module.exports = async (kbnServer, server, config) => {
app: app,
appCount: uiExports.apps.size,
version: kbnServer.version,
buildSha: _.get(kbnServer, 'build.sha', '@@buildSha'),
buildNumber: _.get(kbnServer, 'build.number', '@@buildNum'),
cacheBust: _.get(kbnServer, 'build.number', ''),
buildNum: config.get('pkg.buildNum'),
buildSha: config.get('pkg.buildSha'),
vars: app.getInjectedVars()
};
return this.view(app.templateName, {
app: app,
cacheBust: payload.cacheBust,
kibanaPayload: payload,
loadingGif: loadingGif,
kibanaPayload: payload
});
});
};

View file

@ -8,9 +8,8 @@ module.exports = function (chrome, internals) {
kibana
.constant('kbnVersion', internals.version)
.constant('buildNum', internals.buildNumber)
.constant('commitSha', internals.buildSha)
.constant('cacheBust', internals.cacheBust)
.constant('buildNum', internals.buildNum)
.constant('buildSha', internals.buildSha)
.constant('sessionId', Date.now())
.directive('kbnChrome', function ($rootScope) {
return {

View file

@ -1,36 +0,0 @@
module.exports = function (grunt) {
var { join } = require('path');
var build = grunt.config.get('build');
var src = grunt.config.get('src');
var app = grunt.config.get('app');
var config = {
options: {
patterns: [
{ match: 'version', replacement: '<%= pkg.version %>' },
{ match: 'buildNum', replacement: '<%= buildNum %>' },
{ match: 'commitSha', replacement: '<%= commitSha %>' }
]
},
dist: {
files: [
{
src: [join(src, 'server', 'bin', 'kibana.sh')],
dest: join(build, 'dist', 'kibana', 'bin', 'kibana'),
mode: parseInt('0755', 8)
},
{
src: [join(src, 'server', 'bin', 'kibana.bat')],
dest: join(build, 'dist', 'kibana', 'bin', 'kibana.bat')
},
{
src: [join(src, 'server', 'config', 'index.js')],
dest: join(build, 'dist', 'kibana', 'src', 'config', 'index.js')
}
]
}
};
return config;
};

View file

@ -10,7 +10,7 @@ module.exports = function (grunt) {
version: pkg.version,
build: {
number: grunt.config.get('buildNum'),
sha: grunt.config.get('commitSha')
sha: grunt.config.get('buildSha')
},
repository: pkg.repository,
dependencies: pkg.dependencies

View file

@ -1,7 +1,7 @@
module.exports = function (grunt) {
var exec = require('child_process').execSync;
grunt.registerTask('get_build_props', function () {
grunt.config.set('commitSha', String(exec('git rev-parse HEAD')).trim());
grunt.config.set('buildSha', String(exec('git rev-parse HEAD')).trim());
grunt.config.set('buildNum', parseFloat(exec('git log --format="%h" | wc -l')).trim());
});
};