copyAssets()

in source/custom-resource/lib/s3-helper.js [105:142]


    copyAssets(manifestKey, sourceS3Bucket, sourceS3prefix, destS3Bucket) {
        console.log(`source bucket: ${sourceS3Bucket}`);
        console.log(`source prefix: ${sourceS3prefix}`);
        console.log(`destination bucket: ${destS3Bucket}`);

        let _self = this;
        return new Promise((resolve, reject) => {

            this._downloadManifest(sourceS3Bucket, manifestKey).then((data) => {

                fs.readFile(_self.downloadLocation, 'utf8', function(err, data) {
                    if (err) {
                        console.log(err);
                        reject(err);
                    }

                    let _manifest = _self._validateJSON(data);

                    if (!_manifest) {
                        reject('Unable to validate downloaded manifest file JSON');
                    } else {
                        _self._uploadFile(_manifest.files, 0, destS3Bucket, `${sourceS3Bucket}/${sourceS3prefix}`).then((resp) => {
                            console.log(resp);
                            resolve(resp)
                        }).catch((err) => {
                            console.log(err);
                            reject(err);
                        });
                    }

                });
            }).catch((err) => {
                console.log(err);
                reject(err);
            });

        });
    };