Browse Source

grunt: record git-revision in index.html

Nils Schneider 9 years ago
parent
commit
071cd3fe69
4 changed files with 27 additions and 2 deletions
  1. 17 1
      Gruntfile.js
  2. 3 0
      html/index.html
  3. 2 1
      package.json
  4. 5 0
      tasks/build.js

+ 17 - 1
Gruntfile.js

@@ -1,7 +1,23 @@
 module.exports = function (grunt) {
+  grunt.loadNpmTasks("grunt-git-describe")
+
+  grunt.initConfig({
+    "git-describe": {
+      options: {},
+      default: {}
+    }
+  })
+
+  grunt.registerTask("saveRevision", function() {
+    grunt.event.once("git-describe", function (rev) {
+      grunt.option("gitRevision", rev)
+    })
+    grunt.task.run("git-describe")
+  })
+
   grunt.loadTasks("tasks")
 
-  grunt.registerTask("default", ["lint", "copy", "sass", "requirejs"])
+  grunt.registerTask("default", ["lint", "saveRevision", "copy", "sass", "requirejs"])
   grunt.registerTask("lint", ["eslint"])
   grunt.registerTask("dev", ["default", "connect:server", "watch"])
 }

+ 3 - 0
html/index.html

@@ -9,6 +9,9 @@
     <link rel="stylesheet" href="style.css">
     <script src="vendor/es6-shim/es6-shim.min.js"></script>
     <script src="app.js"></script>
+    <script>
+      console.log("Version: #revision#")
+    </script>
   </head>
   <body>
   </body>

+ 2 - 1
package.json

@@ -14,7 +14,8 @@
     "grunt-contrib-sass": "^0.9.2",
     "grunt-contrib-uglify": "^0.5.1",
     "grunt-contrib-watch": "^0.6.1",
-    "grunt-eslint": "^10.0.0"
+    "grunt-eslint": "^10.0.0",
+    "grunt-git-describe": "^2.3.2"
   },
   "eslintConfig": {
     "env": {

+ 5 - 0
tasks/build.js

@@ -2,6 +2,11 @@ module.exports = function(grunt) {
   grunt.config.merge({
     copy: {
       html: {
+        options: {
+          process: function (content) {
+            return content.replace("#revision#", grunt.option("gitRevision"))
+          }
+        },
         src: ["*.html"],
         expand: true,
         cwd: "html/",