1

我想将文件从本地文件系统上传到新的 GCP 存储桶。我想在存储桶中创建一个新目录以供本地文件驻留。

我可以成功地做到这一点,但是 Terraform 在存储桶中创建了完整的本地文件路径。我只想创建 GCP 存储桶,在 GCP 存储桶中创建新目录,并上传本地文件。

variable "bucket_name" {
  default = "my-bucket-gfsdfdye32421"
}
variable "my_files" {
  default = ["local/docs/red.txt", "local/docs/blue.txt"]
}


resource "google_storage_bucket" "bucket" {
  name          = "${var.bucket_name}"
  force_destroy = true
}

resource "google_storage_bucket_object" "default" {
  count  = "${length(var.my_files)}"
  name   = "new_gcp_dir/${element(var.my_files, count.index)}"
  source = "${element(var.my_files, count.index)}"
  bucket = "${google_storage_bucket.bucket.name}"
}

上面的代码在我的 GCP Bucket 中创建了以下文件结构:

my-bucket / new_gcp_dir / local / docs / red.txt
my-bucket / new_gcp_dir / local / docs / blue.txt

我希望 GCP 文件结构看起来像这样:

my-bucket / new_gcp_dir / red.txt
my-bucket / new_gcp_dir / blue.txt
4

0 回答 0