Kaynağa Gözat

trying to get css, and js build file revisioning working

Torkel Ödegaard 11 yıl önce
ebeveyn
işleme
36b1dce7e4

+ 3 - 1
package.json

@@ -55,6 +55,8 @@
   },
   "license": "Apache License",
   "dependencies": {
-    "grunt-contrib-concat": "^0.4.0"
+    "grunt-contrib-concat": "^0.4.0",
+    "grunt-filerev": "^0.2.1",
+    "grunt-usemin": "^2.1.1"
   }
 }

+ 4 - 1
tasks/build_task.js

@@ -6,11 +6,13 @@ module.exports = function(grunt) {
     'jshint:tests',
     'clean:on_start',
     'less:src',
+    'concat:css',
     'copy:everything_but_less_to_temp',
     'htmlmin:build',
     'cssmin:build',
     'ngmin:build',
     'requirejs:build',
+    'filerev',
     'clean:temp',
     'build:write_revision',
     'uglify:dest'
@@ -19,6 +21,7 @@ module.exports = function(grunt) {
   // run a string replacement on the require config, using the latest revision number as the cache buster
   grunt.registerTask('build:write_revision', function() {
     grunt.event.once('git-describe', function (desc) {
+
       grunt.config('string-replace.config', {
         files: {
           '<%= destDir %>/app/components/require.config.js': '<%= destDir %>/app/components/require.config.js',
@@ -41,4 +44,4 @@ module.exports = function(grunt) {
     });
     grunt.task.run('git-describe');
   });
-};
+};

+ 13 - 0
tasks/options/filerev.js

@@ -0,0 +1,13 @@
+module.exports = function(config) {
+  return {
+    options: {
+      encoding: 'utf8',
+      algorithm: 'md5',
+      length: 8,
+    },
+    css: {
+      src: '<%= srcDir %>/css/default.min.css',
+      dest: '<%= destDir %>/css'
+    }
+  };
+};

+ 8 - 0
tasks/options/usemin.js

@@ -0,0 +1,8 @@
+module.exports = function(config) {
+  return {
+    html: '<%= destDir %>/index.html',
+    options: {
+      assetsDirs: ['<%= destDir %>/css/']
+    }
+  };
+};

+ 5 - 0
tasks/options/useminPrepare.js

@@ -0,0 +1,5 @@
+module.exports = function(config) {
+  return {
+    html: 'tmp/index.html',
+  };
+};