Terraform GCP: просто загрузите имя файла с помощью google_storage_bucket_object - PullRequest
1 голос
/ 15 мая 2019

Я хочу загрузить файлы из моей локальной файловой системы в новое хранилище 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
...