From 129cc9b4c97b22e80dad3a3d8c12ad8a31dda6ea Mon Sep 17 00:00:00 2001 From: Anders Steiner Date: Wed, 28 Jan 2015 09:58:52 +0100 Subject: [PATCH] add application version number add nom node-pom-parser package add VERSION from pom to angularjs constants show VERSION next to logo fix #1048 --- app/templates/Gruntfile.js | 10 ++++++---- app/templates/_package.json | 1 + app/templates/gulpfile.js | 9 ++++++--- app/templates/src/main/scss/main.scss | 5 +++++ app/templates/src/main/webapp/assets/styles/main.css | 8 ++++++++ app/templates/src/main/webapp/scripts/app/_app.js | 3 ++- .../main/webapp/scripts/components/navbar/navbar.html | 2 +- 7 files changed, 29 insertions(+), 9 deletions(-) diff --git a/app/templates/Gruntfile.js b/app/templates/Gruntfile.js index e7c80533724b..d508a9248827 100644 --- a/app/templates/Gruntfile.js +++ b/app/templates/Gruntfile.js @@ -1,10 +1,10 @@ // Generated on <%= (new Date).toISOString().split('T')[0] %> using <%= pkg.name %> <%= pkg.version %> 'use strict'; +var pomParser = require('node-pom-parser'); var proxySnippet = require('grunt-connect-proxy/lib/utils').proxyRequest; // usemin custom step -var path = require('path'); var useminAutoprefixer = { name: 'autoprefixer', createConfig: require('grunt-usemin/lib/config/cssmin').createConfig // Reuse cssmins createConfig @@ -26,7 +26,7 @@ module.exports = function (grunt) { tasks: ['wiredep'] }, ngconstant: { - files: ['Gruntfile.js'], + files: ['Gruntfile.js', 'pom.xml'], tasks: ['ngconstant:dev'] },<% if (useCompass) { %> compass: { @@ -486,7 +486,8 @@ module.exports = function (grunt) { dest: 'src/main/webapp/scripts/app/app.constants.js', }, constants: { - ENV: 'dev' + ENV: 'dev', + VERSION: pomParser.parsePom({ filePath: "pom.xml"}).version } }, prod: { @@ -494,7 +495,8 @@ module.exports = function (grunt) { dest: '.tmp/scripts/app/app.constants.js', }, constants: { - ENV: 'prod' + ENV: 'prod', + VERSION: pomParser.parsePom({ filePath: "pom.xml"}).version } } } diff --git a/app/templates/_package.json b/app/templates/_package.json index b382beabb2b8..2ffa1cddaac5 100644 --- a/app/templates/_package.json +++ b/app/templates/_package.json @@ -64,6 +64,7 @@ "karma-requirejs": "0.2.2", "karma-phantomjs-launcher": "0.1.4", "karma": "0.12.31", + "node-pom-parser": "0.1.1", "bower": "1.3.12", "generator-jhipster": "<%= packagejs.version %>", "lodash": "2.4.1", diff --git a/app/templates/gulpfile.js b/app/templates/gulpfile.js index 066276769001..95e10b07536c 100644 --- a/app/templates/gulpfile.js +++ b/app/templates/gulpfile.js @@ -23,7 +23,8 @@ var gulp = require('gulp'), replace = require('gulp-replace'), url = require('url'), wiredep = require('wiredep').stream, - gulpif = require('gulp-if'); + gulpif = require('gulp-if'), + pomParser = require('node-pom-parser'); var karma = require('gulp-karma')({configFile: 'src/test/javascript/karma.conf.js'}); @@ -208,7 +209,8 @@ gulp.task('ngconstant:dev', function() { interpolate: /\{%=(.+?)%\}/g, wrap: '"use strict";\n// DO NOT EDIT THIS FILE, EDIT THE GULP TASK NGCONSTANT SETTINGS INSTEAD WHICH GENERATES THIS FILE\n{%= __ngModule %}', constants: { - ENV: 'dev' + ENV: 'dev', + VERSION: pomParser.parsePom({ filePath: "pom.xml"}).version }, }) .pipe(gulp.dest(yeoman.app + 'scripts/app/')); @@ -223,7 +225,8 @@ gulp.task('ngconstant:prod', function() { interpolate: /\{%=(.+?)%\}/g, wrap: '"use strict";\n// DO NOT EDIT THIS FILE, EDIT THE GULP TASK NGCONSTANT SETTINGS INSTEAD WHICH GENERATES THIS FILE\n{%= __ngModule %}', constants: { - ENV: 'prod' + ENV: 'prod', + VERSION: pomParser.parsePom({ filePath: "pom.xml"}).version }, }) .pipe(gulp.dest(yeoman.tmp + 'scripts/app/')); diff --git a/app/templates/src/main/scss/main.scss b/app/templates/src/main/scss/main.scss index 885895cd6482..fc5dd7bec89c 100644 --- a/app/templates/src/main/scss/main.scss +++ b/app/templates/src/main/scss/main.scss @@ -26,6 +26,11 @@ body { background-repeat: no-repeat; } +.navbar-version { + font-size: 10px; + color: #ccc +} + .browserupgrade { margin: 0.2em 0; background: #ccc; diff --git a/app/templates/src/main/webapp/assets/styles/main.css b/app/templates/src/main/webapp/assets/styles/main.css index fa6a489762d0..9f587f18a91c 100755 --- a/app/templates/src/main/webapp/assets/styles/main.css +++ b/app/templates/src/main/webapp/assets/styles/main.css @@ -27,6 +27,14 @@ Developement Ribbon background-repeat: no-repeat; } +/* ========================================================================== +Version number in navbar +========================================================================== */ +.navbar-version { + font-size: 10px; + color: #ccc +} + /* ========================================================================== Browser Upgrade Prompt ========================================================================== */ diff --git a/app/templates/src/main/webapp/scripts/app/_app.js b/app/templates/src/main/webapp/scripts/app/_app.js index f973c0e144dd..f9f713638f49 100644 --- a/app/templates/src/main/webapp/scripts/app/_app.js +++ b/app/templates/src/main/webapp/scripts/app/_app.js @@ -3,8 +3,9 @@ angular.module('<%=angularAppName%>', ['LocalStorageModule', 'tmh.dynamicLocale', 'ngResource', 'ui.router', 'ngCookies', 'pascalprecht.translate', 'ngCacheBuster']) - .run(function ($rootScope, $location, $http, $state, $translate, Auth, Principal, Language, ENV) { + .run(function ($rootScope, $location, $http, $state, $translate, Auth, Principal, Language, ENV, VERSION) { $rootScope.ENV = ENV; + $rootScope.VERSION = VERSION; $rootScope.$on('$stateChangeStart', function (event, toState, toStateParams) { $rootScope.toState = toState; $rootScope.toStateParams = toStateParams; diff --git a/app/templates/src/main/webapp/scripts/components/navbar/navbar.html b/app/templates/src/main/webapp/scripts/components/navbar/navbar.html index 857898b4f249..33effbaa930a 100644 --- a/app/templates/src/main/webapp/scripts/components/navbar/navbar.html +++ b/app/templates/src/main/webapp/scripts/components/navbar/navbar.html @@ -7,7 +7,7 @@ - jhipster + jhipster {{VERSION}}