Util.packTarball = function()

in pipeline/local_modules/pipeline_utils/pipeline_utils.js [111:138]


Util.packTarball = function (sourceDirectory, destPath) {
  return new Promise(function (resolve, reject) {
    console.log("Creating tarball '" + destPath + "' from '" + sourceDirectory + "'");

    var packer = tar.Pack({
      noProprietary: true,
      fromBase: true
    })
      .on('error', reject);

    var gzip = zlib.createGzip()
      .on('error', reject);

    var destFile = fs.createWriteStream(destPath)
      .on('error', reject)
      .on('close', resolve);

    var stream = fstream.Reader({
      path: sourceDirectory,
      type: "Directory"
    })
      .on('error', reject)
      .pipe(packer)
      .pipe(gzip)
      .pipe(destFile);

  });
}