Permalink
Browse files

Grunt: Replace all instances of @VERSION during copy. Fixes #8261 - B…

…uild: @VERSION replacement incomplete.

(cherry picked from commit 7475763)
  • Loading branch information...
scottgonzalez committed Apr 18, 2012
1 parent aec682c commit 2f4c74c4cec9e44e003b1d2570b259dfaf9f57d9
Showing with 12 additions and 9 deletions.
  1. +12 −9 grunt.js
View
@@ -332,7 +332,16 @@ grunt.initConfig({
grunt.registerMultiTask( "copy", "Copy files to destination folder and replace @VERSION with pkg.version", function() {
function replaceVersion( source ) {
- return source.replace( "@VERSION", grunt.config( "pkg.version" ) );
+ return source.replace( /@VERSION/g, grunt.config( "pkg.version" ) );
+ }
+ function copyFile( src, dest ) {
+ if ( /(js|css)$/.test( src ) ) {
+ grunt.file.copy( src, dest, {
+ process: replaceVersion
+ });
+ } else {
+ grunt.file.copy( src, dest );
+ }
}
var files = grunt.file.expandFiles( this.file.src );
var target = this.file.dest + "/";
@@ -342,19 +351,13 @@ grunt.registerMultiTask( "copy", "Copy files to destination folder and replace @
}
files.forEach(function( fileName ) {
var targetFile = strip ? fileName.replace( strip, "" ) : fileName;
- if ( /(js|css)$/.test( fileName ) ) {
- grunt.file.copy( fileName, target + targetFile, {
- process: replaceVersion
- });
- } else {
- grunt.file.copy( fileName, target + targetFile );
- }
+ copyFile( fileName, target + targetFile );
});
grunt.log.writeln( "Copied " + files.length + " files." );
var renameCount = 0;
for ( var fileName in this.data.renames ) {
renameCount += 1;
- grunt.file.copy( fileName, target + grunt.template.process( this.data.renames[ fileName ], grunt.config() ) );
+ copyFile( fileName, target + grunt.template.process( this.data.renames[ fileName ], grunt.config() ) );
}
if ( renameCount ) {
grunt.log.writeln( "Renamed " + renameCount + " files." );

0 comments on commit 2f4c74c

Please sign in to comment.