Skip to content
Permalink
Browse files

build: update release script to use nodejs archiver.

  • Loading branch information
ctalkington committed May 12, 2013
1 parent 8ab32fe commit eaee6eae0fee57337fabe41eb4558cf1acdf765b
Showing with 29 additions and 3 deletions.
  1. +1 −0 AUTHORS.txt
  2. +26 −2 build/release.js
  3. +2 −1 package.json
@@ -169,3 +169,4 @@ Li Xudong <istonelee@gmail.com>
Renato Oliveira dos Santos <ros3@cin.ufpe.br>
Jason Bedard <jason+jquery@jbedard.ca>
Kyle Robinson Young <kyle@dontkry.com>
Chris Talkington <chris@talkingtontech.com>
@@ -9,7 +9,13 @@ var debug = false,

var fs = require("fs"),
child = require("child_process"),
path = require("path");
path = require("path"),
zlib = require("zlib");

var archiver = require("archiver");
var gzipOptions = {
level: 9
};

var releaseVersion,
nextVersion,
@@ -237,6 +243,19 @@ function makeArchive( cdn, files, fn ) {

console.log( "Creating production archive for " + cdn );

var gzipper = zlib.createGzip( gzipOptions );
var output = fs.createWriteStream( "dist/" + cdn + "-jquery-" + releaseVersion + ".tar.gz" );

var archive = archiver( "tar" );

archive.on( "error", function( err ) {
throw err;
});

output.on( "close", fn );

archive.pipe( gzipper ).pipe( output );

files = files.map(function( item ) {
return "dist/" + item.replace( /VER/g, releaseVersion );
});
@@ -245,7 +264,12 @@ function makeArchive( cdn, files, fn ) {
exec( "md5sum", files, function( err, stdout, stderr ) {
fs.writeFileSync( md5file, stdout );
files.push( md5file );
exec( "tar", [ "-czvf", "dist/" + cdn + "-jquery-" + releaseVersion + ".tar.gz" ].concat( files ), fn, false );

files.forEach(function( file ) {
archive.append( fs.createReadStream( file ), { name: file } );
});

archive.finalize();
}, false );
}

@@ -31,7 +31,8 @@
"grunt-contrib-uglify": "0.2.0",
"grunt": "0.4.1",
"gzip-js": "0.3.1",
"testswarm": "0.2.2"
"testswarm": "0.2.2",
"archiver": "~0.4.2"
},
"keywords": []
}

0 comments on commit eaee6ea

Please sign in to comment.
You can’t perform that action at this time.