diff options
Diffstat (limited to 'ofborg/ofborg-viewer/webpack/revision.js')
| -rw-r--r-- | ofborg/ofborg-viewer/webpack/revision.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/ofborg/ofborg-viewer/webpack/revision.js b/ofborg/ofborg-viewer/webpack/revision.js new file mode 100644 index 0000000000..e5e1256eb9 --- /dev/null +++ b/ofborg/ofborg-viewer/webpack/revision.js @@ -0,0 +1,39 @@ +/* globals require, module */ +const path = require("path"); +const fs = require("fs"); +const exec = require("child_process").execSync; + +const {NODE_ENV = "development"} = process.env; + +// Identifies the git revision. +// Makes it available in the environement of the app. + +const get_revision = () => { + // Git revision from deployment. + const file = path.resolve("./.git-revision"); + if (fs.existsSync(file)) { + // It is assumed that the build process *can* dirty the repo, + // but it manages to do it in a sane way. + return fs.readFileSync(file, {encoding: "utf-8"}).trim(); + } + + // Assumes no need to show revision, *should* be clean. + return ""; +}; + +const get_version = () => { + const file = path.resolve("./package.json"); + const data = fs.readFileSync(file, {encoding: "utf-8"}).trim(); + const {version} = JSON.parse(data); + + if (NODE_ENV === "development") { + return version + "-dev"; + } + + return version; +}; + +module.exports = { + get_revision, + get_version, +}; |
