Unzip files directly to Amazon S3 using streams.
npm install unzip-to-s3 --save
var fs = require('fs');
var unzipToS3 = require('unzip-to-s3');
// Create the S3 client
var bucketUpload = unzipToS3.createClient({
key: 'some_key', // required
secret: 'some_secret', // required
bucket: 'some_bucket', // required
path: 'some/path' // optional
});
// Create the zip read stream
var zipStream = fs.createReadStream('path/to/some/file.zip');
// Unzip and upload
bucketUpload(zipStream).on('data', function (file) {
// "file" is the file stream and object that was inflated
// from the zip file
}).pipe(process.stdout);
key
- your AWS keysecret
- your AWS secretbucket
- your S3 bucketpath
- the path to store your objects on S3
unzip-to-s3 uses Knox underneath, so refer to their Client Creation Options for all client options.
npm install
npm test