Javascript 使用Angular 2中的gulp-s3将资产上载到digitalOcean bucket?

Javascript 使用Angular 2中的gulp-s3将资产上载到digitalOcean bucket?,javascript,angular,amazon-web-services,gulp,digital-ocean,Javascript,Angular,Amazon Web Services,Gulp,Digital Ocean,我正在使用gulp-s3库 在根目录中创建了gulpfile.js文件 这里的代码用于上传dist文件夹 console.log('gulf'); var gulp = require('gulp'); var s3 = require('gulp-s3'); //will add to the variable now just for testing var AWS = { key: 'ttvtdxxxx', secret: 'ttvtd', bucket: 'dev-stati

我正在使用
gulp-s3

在根目录中创建了
gulpfile.js
文件

这里的代码用于上传dist文件夹

console.log('gulf');
var gulp = require('gulp');
var s3 = require('gulp-s3');
//will add to the variable now just for testing
var AWS = {
  key: 'ttvtdxxxx',
  secret: 'ttvtd',
  bucket: 'dev-static-ttvtd-ro',
  region: 'fra1',
  endpoint: 'https://fra1.digitaloceanspaces.com'
};

var options = {
  uploadPath: 'assets',
  headers: {
    'Cache-Control': 'max-age=315360000, no-transform, public',
    'x-amz-acl': 'private'
  },
    failOnError: true 
}; // It will upload the 'src' into '/remote-folder'

gulp.task('default', async function() {
  console.log("Hi! I'm Gulp default task root!");
  gulp.src('./dist/**', { 
    read: false

  }).pipe(s3(AWS, options));
  console.log('task completed!');
});
当我运行命令
gulp
时,文件和代码正在工作, 因此,我如何管理此aws设置,使其与digitalOcean bucket一起工作。
dist
文件夹未上载到do bucket,并且未返回任何错误

上,端点字符串中没有
https://

gulp-s3
在引擎盖下使用
aws sdk
(实际上是一个相当旧的版本…)

就我个人而言,我在
gulp-s3
方面没有太大成功,但是
gulp-s3-upload
对我来说效果更好,因为它的功能更丰富,目前似乎更新得更频繁

以下是一个示例:

const s3upload = require('gulp-s3-upload')();

const s3Config = {
    endpoint: 'fra1.digitaloceanspaces.com', // note no https://
    region: 'fra1',
    accessKeyId: process.env.S3_ACCESS_KEY,
    secretAccessKey: process.env.S3_SECRET_ACCESS_KEY,
};

gulp.task('upload', () => gulp.src('dist/**')
    .pipe(s3upload({
        Bucket: process.env.S3_BUCKET,
        ACL: 'private', 
        Metadata: {
            "uploadedVia": "gulp-s3-upload"
        }
    }, s3Config)));