Terraform GCP:只需使用google_storage_bucket_对象上传文件名即可
我想将文件从本地文件系统上载到新的GCP存储桶。我想在存储桶中为本地文件创建一个新目录 我可以成功地做到这一点,但是Terraform会在存储桶中创建完整的本地文件路径。我只想创建GCP bucket,在GCP bucket中创建新目录,并上传本地文件Terraform GCP:只需使用google_storage_bucket_对象上传文件名即可,terraform,terraform-provider-gcp,Terraform,Terraform Provider Gcp,我想将文件从本地文件系统上载到新的GCP存储桶。我想在存储桶中为本地文件创建一个新目录 我可以成功地做到这一点,但是Terraform会在存储桶中创建完整的本地文件路径。我只想创建GCP bucket,在GCP bucket中创建新目录,并上传本地文件 variable "bucket_name" { default = "my-bucket-gfsdfdye32421" } variable "my_files" { default = ["local/docs/red.txt", "
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
文件之间的本地路径是否不同?否则,您可以在
source
参数中硬编码dirname,并将其从变量中完全删除。目录名不会更改。但是bucket和目录需要在部署时创建。我会试试你的建议。不同文件的本地路径不同吗?否则,您可以在source
参数中硬编码dirname,并将其从变量中完全删除。目录名不会更改。但是bucket和目录需要在部署时创建。我试试你的推荐。