【问题标题】:Create a folder inside a GCS bucket with Deployment Manager使用 Deployment Manager 在 GCS 存储桶内创建文件夹
【发布时间】:2018-01-08 14:08:27
【问题描述】:

我使用以下代码创建了一个带有 DM 的存储桶

resources:
    - type: storage.v1.bucket
      name: test-bucket
      properties:
        project: my-project
        name: test-bucket

现在,当尝试在存储桶 (test-bucket-name\test) 中创建文件夹结构时,我遇到了错误。请参考下面的示例代码和错误信息。

resources:
- type: storage.v1.object
  name: test
  properties:
    project: my-project
    name: test
    bucket: test-bucket

错误:

message: '{"ResourceType":"storage.v1.object","ResourceErrorCode":"400","Resou
rceErrorMessage":{"code":400,"errors":[{"domain":"global","message":"Upload
    requests must include an uploadType URL parameter and a URL path beginning w
ith
    /upload/","reason":"wrongUrlForUpload","extendedHelp":"https://cloud.google.
com/storage/docs/json_api/v1/how-tos/upload"}],"message":"Upload
    requests must include an uploadType URL parameter and a URL path beginning w
ith
    /upload/","statusMessage":"Bad Request","requestPath":"https://www.googleapi
s.com/storage/v1/b/test-bucket/o","httpMethod":"POST"}}'

我尝试设置 urlpath 属性但没有成功。

谁能指导我。

【问题讨论】:

    标签: google-cloud-storage google-deployment-manager


    【解决方案1】:

    您不能在存储分区内创建文件夹。这是一个平面存储。您可以放入存储桶的唯一内容是对象(如文件)。这些对象的名称可能类似于文件夹结构,以便在 UI 或其他方式中轻松查看这些对象。

    这使得云存储非常适合存储要在网页中使用的图像等对象,以便可以快速检索它们而无需文件夹结构的开销。

    【讨论】:

      【解决方案2】:

      Cloud Storage 系统没有文件夹的概念,在 GCP Console 中创建的文件夹可以方便地帮助您在存储分区中组织对象。

      作为视觉辅助,GCP Console 显示带有文件夹图标图像的文件夹,以帮助您区分文件夹和对象。
      在存储桶(或存储桶中的文件夹)中,您可以通过单击“创建文件夹”按钮来创建新文件夹。
      添加到文件夹的对象似乎位于 GCP Console 的文件夹中。
      实际上,所有对象都存在于存储桶级别,并且只是在其名称中包含目录结构。

      例如,如果您创建一个名为抽屉的文件夹并将文件 image.jpg 添加到该文件夹​​,GCP Console 会使该文件看起来存在于该文件夹中。
      实际上,没有单独的文件夹实体:文件只是存在于存储桶中,名称为抽屉/image.jpg。

      【讨论】:

        猜你喜欢
        • 2017-02-02
        • 1970-01-01
        • 1970-01-01
        • 2016-08-23
        • 1970-01-01
        • 2019-12-21
        • 2022-01-19
        • 2020-10-28
        • 1970-01-01
        相关资源
        最近更新 更多