Skip to content
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 1 changed file with 12 additions and 9 deletions.
@@ -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.