-
-
Notifications
You must be signed in to change notification settings - Fork 69
Store filerev summary to file and strip summary paths #78
base: master
Are you sure you want to change the base?
Changes from 2 commits
b4cb832
206beb5
ff8f2a9
5beef65
b2dde35
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -27,9 +27,10 @@ module.exports = function (grunt) { | |
| try { | ||
| var stat = fs.lstatSync(el.dest); | ||
| if (stat && !stat.isDirectory()) { | ||
| grunt.fail.fatal('Destination ' + el.dest + ' for target ' + target + ' is not a directory'); | ||
| grunt.fail.fatal('Destination ' + el.dest + ' for target ' + target + ' is not a directory'); | ||
| } | ||
| } catch (err) { | ||
| } | ||
| catch (err) { | ||
| grunt.verbose.writeln('Destination dir ' + el.dest + ' does not exists for target ' + target + ': creating'); | ||
| grunt.file.mkdir(el.dest); | ||
| } | ||
|
|
@@ -50,12 +51,17 @@ module.exports = function (grunt) { | |
|
|
||
| if (typeof options.process === 'function') { | ||
| newName = options.process(path.basename(file, ext), suffix, ext.slice(1)); | ||
| } else { | ||
| } | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
| else { | ||
| if (options.process) { | ||
| grunt.log.error('options.process must be a function; ignoring'); | ||
| } | ||
|
|
||
| newName = [path.basename(file, ext), suffix, ext.slice(1)].join('.'); | ||
| newName = [ | ||
| path.basename(file, ext), | ||
| suffix, | ||
| ext.slice(1) | ||
| ].join('.'); | ||
| } | ||
|
|
||
| var resultPath; | ||
|
|
@@ -64,7 +70,8 @@ module.exports = function (grunt) { | |
| dirname = path.dirname(file); | ||
| resultPath = path.resolve(dirname, newName); | ||
| fs.renameSync(file, resultPath); | ||
| } else { | ||
| } | ||
| else { | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. } else { |
||
| dirname = el.dest; | ||
| resultPath = path.resolve(dirname, newName); | ||
| grunt.file.copy(file, resultPath); | ||
|
|
@@ -78,7 +85,8 @@ module.exports = function (grunt) { | |
| if (grunt.file.exists(map)) { | ||
| if (move) { | ||
| fs.renameSync(map, resultPath); | ||
| } else { | ||
| } | ||
| else { | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. } else { |
||
| grunt.file.copy(map, resultPath); | ||
| } | ||
| sourceMap = true; | ||
|
|
@@ -101,6 +109,42 @@ module.exports = function (grunt) { | |
| next(); | ||
| }, this.async()); | ||
|
|
||
| if (options.stripPath) { | ||
| // modify filerev summary | ||
| var strippedSummary = {}; | ||
|
|
||
| for (var key in filerev.summary) { | ||
| if (filerev.summary.hasOwnProperty(key)) { | ||
| var src; | ||
| var dest; | ||
| if (typeof options.stripPath === 'object') { | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. var dest;
if (typeof options.stripPath === 'object') { |
||
| if (options.stripPath.src) { | ||
| src = options.stripPath.src; | ||
| } | ||
| if (options.stripPath.dest) { | ||
|
||
| dest = options.stripPath.dest; | ||
| } | ||
| } | ||
| else { | ||
|
||
| src = options.stripPath; | ||
| dest = options.stripPath; | ||
| } | ||
| var value = filerev.summary[key]; | ||
|
||
| value = value.replace(dest, ''); | ||
| key = key.replace(src, ''); | ||
| strippedSummary[key] = value; | ||
| } | ||
| } | ||
|
|
||
| filerev.summary = strippedSummary; | ||
| } | ||
|
|
||
| if (options.summaryFilePath) { | ||
| // write filerev summary into file | ||
| fs.writeFileSync(options.summaryFilePath, JSON.stringify(filerev.summary, null, 4)); | ||
| grunt.log.writeln('Filerev summary was stored to ' + options.summaryFilePath); | ||
| } | ||
|
|
||
| grunt.filerev = filerev; | ||
| }); | ||
| }; | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
} catch (err) {