From ac268907bf341fc9677d247dc6c05abd76dccb13 Mon Sep 17 00:00:00 2001 From: Daniel Egger Date: Fri, 9 Sep 2022 11:39:36 +0200 Subject: [PATCH] VBV-143: "git revision hash" und Build-Datum anzeigen --- client/package.json | 3 ++- client/src/components/Footer.vue | 20 +++++++------------- client/versionize.js | 17 +++++++++++++++++ 3 files changed, 26 insertions(+), 14 deletions(-) create mode 100644 client/versionize.js diff --git a/client/package.json b/client/package.json index 07906114..a4dd240a 100644 --- a/client/package.json +++ b/client/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "scripts": { "dev": "vite", - "build": "vue-tsc --noEmit && vite build && cp ./dist/index.html ../server/vbv_lernwelt/templates/vue/index.html && cp -r ./dist/static/vue ../server/vbv_lernwelt/static/", + "build": "vue-tsc --noEmit && vite build && node versionize && cp ./dist/index.html ../server/vbv_lernwelt/templates/vue/index.html && cp -r ./dist/static/vue ../server/vbv_lernwelt/static/", "build:tailwind": "tailwindcss -i tailwind.css -o ../server/vbv_lernwelt/static/css/tailwind.css --minify", "test": "vitest run", "coverage": "vitest run --coverage", @@ -44,6 +44,7 @@ "postcss": "^8.4.14", "postcss-import": "^14.1.0", "prettier": "^2.7.1", + "replace-in-file": "^6.3.5", "sass": "^1.54.6", "sass-loader": "^12.6.0", "start-server-and-test": "^1.14.0", diff --git a/client/src/components/Footer.vue b/client/src/components/Footer.vue index 7d678303..25289d1b 100644 --- a/client/src/components/Footer.vue +++ b/client/src/components/Footer.vue @@ -1,21 +1,15 @@ - + diff --git a/client/versionize.js b/client/versionize.js new file mode 100644 index 00000000..ac4a8633 --- /dev/null +++ b/client/versionize.js @@ -0,0 +1,17 @@ +const replace = require("replace-in-file"); +const gitHash = require('child_process') + .execSync("git rev-parse --short HEAD") + .toString().trim() + +const options = { + files: "dist/static/vue/*.js", + from: /VBV_VERSION_BUILD_NUMBER_VBV/g, + to: new Date().toISOString().replace("T", " ").substring(0, 19) + ' ' + gitHash, +}; + +replace(options, (error, results) => { + if (error) { + return console.error("Versionize Error occurred:", error); + } + console.log(`Versionized ${results.filter((f) => f.hasChanged).length} files`); +});