是否有用于在存储桶(GCP)中创建文件夹的Terraform模块? 也就是说,我已经知道,使用google_storage_bucket模块,我们可以在GCP中创建GCS存储桶。 但是,有什么方法可以使用terraform在存储桶(GCP)中创建文件夹吗?
谢谢
答案 0 :(得分:4)
因此,您的问题的快速答案是:是的。您可以使用Terraform有效地在存储桶中创建一个空的“目录”。方法如下:
resource "google_storage_bucket" "storage_bucket" {
name = "my-really-awesome-test-bucket"
location = "us-east4"
project = "my-really-awesome-project"
}
resource "google_storage_bucket_object" "content_folder" {
name = "empty_directory/"
content = "Not really a directory, but it's empty."
bucket = "${google_storage_bucket.storage_bucket.name}"
}
请注意,您正在创建名称末尾带有/的对象。内容无处不在,因为模块需要它。现在,当您登录GCP控制台时,您会在存储桶中看到空的“目录”,并且可以将新对象上传到其中。
但是您还应该了解这里发生的其他事情。 Google Cloud Storage使用平面文件系统。这意味着,当您将对象上载到服务时,您实际上并没有创建目录结构并将文件存储在其中。相反,您将使用整个路径(例如:'/ bucket_name / directory1 / directory2 / filename')作为整个文件名来创建一个文件。实际上,它比这更具技术性,但这是一个粗略的解释。
答案 1 :(得分:1)
对象存储空间完全平坦。没有文件夹。当您在用户界面中看到文件夹或命令的输出时,它只是描述如何向您显示文件夹的元数据。