From 2c65a4f3ec54555e54fe98a3122fdfa270e02fbd Mon Sep 17 00:00:00 2001 From: Roosted7 <thomasroos@live.nl> Date: Wed, 9 May 2018 17:53:14 +0200 Subject: [PATCH] Use git hash as version --- client/components/NavBar.jsx | 2 +- package.json | 1 + webpack.dev.js | 8 ++++++++ webpack.prod.js | 8 ++++++++ 4 files changed, 18 insertions(+), 1 deletion(-) diff --git a/client/components/NavBar.jsx b/client/components/NavBar.jsx index 4628339ca..18e3eea24 100644 --- a/client/components/NavBar.jsx +++ b/client/components/NavBar.jsx @@ -97,7 +97,7 @@ class NavBar extends React.Component { <Link className="navbar-item" to='/graders'>Manage graders</Link> <Link className="navbar-item has-text-info" to='/reset'>reset</Link> <div className="navbar-item"> - <i>Version 0.6.4</i> + <i>Version { __COMMIT_HASH__ }</i> </div> </div> </div> diff --git a/package.json b/package.json index 89cf2a34d..45da96d96 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "font-awesome": "^4.7.0", "fuse.js": "^3.2.0", "get-closest": "^0.0.4", + "git-revision-webpack-plugin": "^3.0.3", "html-webpack-plugin": "^3.2.0", "mini-css-extract-plugin": "^0.4.0", "mousetrap": "^1.6.1", diff --git a/webpack.dev.js b/webpack.dev.js index d8dc133ef..9ca388ea3 100644 --- a/webpack.dev.js +++ b/webpack.dev.js @@ -2,6 +2,11 @@ const webpack = require('webpack'); const merge = require('webpack-merge'); const common = require('./webpack.common.js'); +const commitHash = require('child_process') + .execSync('git rev-parse --short HEAD') + .toString() + .trim(); + module.exports = merge(common, { mode: 'development', module: { @@ -29,6 +34,9 @@ module.exports = merge(common, { plugins: [ new webpack.EvalSourceMapDevToolPlugin({ sourceURLTemplate: module => `/${module.identifier}` + }), + new webpack.DefinePlugin({ + __COMMIT_HASH__: JSON.stringify(commitHash + '-dev'), }) ] }) \ No newline at end of file diff --git a/webpack.prod.js b/webpack.prod.js index 43bf21545..d01f43de9 100644 --- a/webpack.prod.js +++ b/webpack.prod.js @@ -5,6 +5,11 @@ const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); const common = require('./webpack.common.js'); +const commitHash = require('child_process') + .execSync('git rev-parse --short HEAD') + .toString() + .trim(); + module.exports = merge(common, { mode: 'production', @@ -36,6 +41,9 @@ module.exports = merge(common, { new MiniCssExtractPlugin({ filename: "[name].css", chunkFilename: "[id].css" + }), + new webpack.DefinePlugin({ + __COMMIT_HASH__: JSON.stringify(commitHash + '-prod'), }) ] }) \ No newline at end of file -- GitLab