如何使用 Serverless 框架部署到 S3 Bucket 中的特定对象键?

How to deploy to a specific object key inside an S3 Bucket with the Serverless framework?

无服务器框架配置允许:

deploymentBucket:
    name: foo

但是,它总是在 foo 存储桶中创建一个 serverless 对象键。我希望能够部署到不同的密钥,如 BAR

deploymentBucket:
    name: foo/BAR # illustration only, doesn't work

这里我有哪些选择?

我不相信 Serverless 有这个功能。

你的选择是

  • 提出 GitHub 问题并希望有人为您添加功能,或者
  • 编写一个无服务器插件,让您可以为部署存储桶内的对象添加前缀

我找到了这个 sample config file,它包含一个以无服务器模块路径为前缀的存储桶名称。

deploymentBucket:
    name: com.serverless.${self:provider.region}.deploys # Deployment bucket name. Default is generated by the framework
    serverSideEncryption: AES256 # when using server-side encryption

这是在黑暗中拍摄的完整照片,但如果您想写入 foo/BAR,也许此设置适合您:

name: com.serverless.${self:provider.region}.foo.BAR

编辑: 更改 package name 会影响将部署写入哪个密钥吗?

Here is 示例 index.html

我对无服务器框架不太熟悉,希望对您有所帮助。