amazon-web-services - terraform 可以复制 s3 存储桶的内容吗?

我正在使用 Terraform 来管理我们应用程序的 AWS 环境。环境有用于各种事物的 s3 存储桶。在设置新环境时,我只想从基本源存储桶或现有环境中复制存储桶。

但我找不到任何可以提供副本的东西。 AWS 接口(interface)允许您在创建时复制设置(我不需要),但不能复制对象,因此这可能不是 terraform 可以直接执行的操作。

如果是这样,间接怎么样?

最佳答案

没有资源可以将对象从一个 S3 存储桶复制到另一个存储桶。如果你想在你的 Terraform 设置中包含它,那么你需要使用 local-exec提供者。

需要执行下面的命令,支持AWS CLI才能运行aws s3 cp

resource "null_resource" "s3_objects" {
  provisioner "local-exec" {
    command = "aws s3 cp s3://bucket1 s3://bucket2 --recursive"
  }
}

为此运行本地服务器需要有 AWS CLI installed具有角色(或有效凭据)以启用副本。

https://stackoverflow.com/questions/62801569/

相关文章:

oracle - 基于字符和数字的 PL/SQL Regex 搜索

common-lisp - 如何在普通的 lisp 中创建一个位数组?

apache-spark - 我可以获取 Spark 读取的文件的元数据吗

python - 将 Pandas 数据框字符串拆分为单独的行

python - 在 django urls.py 中访问请求对象

python - 如何使用 gspread 在 google 工作表单元格中插入任何超链接

python - 我怎样才能遍历这个字典而不是对键进行硬编码

android - CameraX - 在纵向模式下锁定 Activity 时仅旋转预览

ruby-on-rails - 带有 rubocop 错误的 Rails 模型 - 指定 `:inv

postgresql - 使用实体中的默认值与 PostgreSQL hibernate