From da2e8fa76a1e6daa1c0981c9bb54e04aa2674c98 Mon Sep 17 00:00:00 2001 From: Folker Bernitt Date: Tue, 15 Sep 2015 14:47:43 +0200 Subject: Add git revision to web-ui on build - Issue #453 --- web-ui/app/index.html | 2 ++ web-ui/app/js/page/default.js | 5 ++++- web-ui/app/js/page/version.js | 31 +++++++++++++++++++++++++++++++ web-ui/app/js/views/templates.js | 3 ++- web-ui/app/scss/styles.scss | 5 +++++ web-ui/app/templates/page/version.hbs | 1 + web-ui/config/add_git_version.sh | 14 ++++++++++++++ web-ui/package.json | 5 +++-- 8 files changed, 62 insertions(+), 4 deletions(-) create mode 100644 web-ui/app/js/page/version.js create mode 100644 web-ui/app/templates/page/version.hbs create mode 100755 web-ui/config/add_git_version.sh (limited to 'web-ui') diff --git a/web-ui/app/index.html b/web-ui/app/index.html index df6c5afb..825d08a2 100644 --- a/web-ui/app/index.html +++ b/web-ui/app/index.html @@ -48,6 +48,8 @@
+
0.3.1-beta
+
diff --git a/web-ui/app/js/page/default.js b/web-ui/app/js/page/default.js index 0283d596..42aec759 100644 --- a/web-ui/app/js/page/default.js +++ b/web-ui/app/js/page/default.js @@ -44,6 +44,7 @@ define( 'page/logout', 'page/logout_shortcut', 'page/feedback', + 'page/version', ], function ( @@ -74,7 +75,8 @@ define( withLogging, logout, logoutShortcut, - feedback) { + feedback, + version) { 'use strict'; function initialize(path) { @@ -107,6 +109,7 @@ define( offCanvas.attachTo(document); logout.attachTo('#logout'); logoutShortcut.attachTo('#logout-shortcut'); + version.attachTo('.version'); feedback.attachTo('#feedback'); } diff --git a/web-ui/app/js/page/version.js b/web-ui/app/js/page/version.js new file mode 100644 index 00000000..e5299f52 --- /dev/null +++ b/web-ui/app/js/page/version.js @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2015 ThoughtWorks, Inc. + * + * Pixelated is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Pixelated is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with Pixelated. If not, see . + */ +define(['flight/lib/component', 'views/templates'], function (defineComponent, templates) { + 'use strict'; + + return defineComponent(function () { + + this.render = function () { + this.$node.html(templates.page.version()); + }; + + this.after('initialize', function () { + this.render(); + }); + + }); +}); diff --git a/web-ui/app/js/views/templates.js b/web-ui/app/js/views/templates.js index c4ce8c26..1d9861db 100644 --- a/web-ui/app/js/views/templates.js +++ b/web-ui/app/js/views/templates.js @@ -58,7 +58,8 @@ define(['hbs/templates'], function (templates) { page: { logout: window.Pixelated['app/templates/page/logout.hbs'], logoutShortcut: window.Pixelated['app/templates/page/logout_shortcut.hbs'], - feedback: window.Pixelated['app/templates/page/feedback.hbs'] + feedback: window.Pixelated['app/templates/page/feedback.hbs'], + version: window.Pixelated['app/templates/page/version.hbs'] } }; diff --git a/web-ui/app/scss/styles.scss b/web-ui/app/scss/styles.scss index 57227fad..7b1a2ec3 100644 --- a/web-ui/app/scss/styles.scss +++ b/web-ui/app/scss/styles.scss @@ -790,6 +790,11 @@ div.side-nav-bottom { position: fixed; bottom: 0; background-color: $navigation_background; + + .version { + padding-left: 55px; + padding-bottom: 3px; + } } @import "mascot.scss"; diff --git a/web-ui/app/templates/page/version.hbs b/web-ui/app/templates/page/version.hbs new file mode 100644 index 00000000..40804ff3 --- /dev/null +++ b/web-ui/app/templates/page/version.hbs @@ -0,0 +1 @@ +version: UNKNOWN_VERSION \ No newline at end of file diff --git a/web-ui/config/add_git_version.sh b/web-ui/config/add_git_version.sh new file mode 100755 index 00000000..2732abed --- /dev/null +++ b/web-ui/config/add_git_version.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash + +TEMPLATE_FILE="app/js/generated/hbs/templates.js" + +COMMITISH=$(git rev-parse --short HEAD) + +perl -pi -e "s/UNKNOWN_VERSION/$COMMITISH/" $TEMPLATE_FILE + +if [ ! -f "$TEMPLATE_FILE" ] ; then + echo "file $TEMPLATE_FILE not found" 1>&2 + exit 1 +fi + +exit 0 diff --git a/web-ui/package.json b/web-ui/package.json index 95d3ae72..8e862c3e 100644 --- a/web-ui/package.json +++ b/web-ui/package.json @@ -31,12 +31,13 @@ "handlebars-watch": "node_modules/.bin/watch 'npm run handlebars' app/templates", "compass": "compass compile", "compass-watch": "compass watch", - "build": "npm run clean && npm run handlebars && npm run compass", + "build": "npm run clean && npm run handlebars && npm run add_git_version && npm run compass", "jshint": "jshint --config=.jshintrc app test", "clean": "rm -rf .tmp/ dist/**/* app/js/generated/hbs/* app/css/*", "buildmain": "node_modules/requirejs/bin/r.js -o config/buildoptions.js", "package": "/bin/bash config/package.sh", "imagemin": "node config/imagemin.js", - "minify_html": "node_modules/.bin/html-minifier app/index.html --collapse-whitespace | sed 's|.*||' > dist/index.html" + "minify_html": "node_modules/.bin/html-minifier app/index.html --collapse-whitespace | sed 's|.*||' > dist/index.html", + "add_git_version": "/bin/bash config/add_git_version.sh" } } -- cgit v1.2.3